
1在设计时,将list1的MultiSelect = 1
2在command1中添加代码从list1的0循环到list1ListCount-1,判断它们的Selected 是不是等于true, 如果是的,添加到text1中
楼主,我被你打败了 :(
补充吧:
==================================
新建工程,1个list,1个text,1个按钮
设计时:
Text1MultiLine = True
List1MultiSelect = 1
=============
以下是代码:
Private Sub Command1_Click()
Dim i%
Text1 = "你选择了下面这些内容:" & vbCrLf
For i = 0 To List1ListCount - 1
If List1Selected(i) = True Then Text1 = Text1 & List1List(i) & vbCrLf
Next
End Sub
Private Sub Form_Load()
Dim i%
For i = 1 To 10
List1AddItem "测试第" & CStr(i) & "条"
Next
End Sub
=========================
再晕一次只要知道list中有几行吗
只要下面一行代码的
text1=list1ListCount
首先通过ID获取该ListBox控件的CListBox指针list,然后
int Count = list->GetCount();获取字段个数
然后通过循环
CString str;
for(int index=0; index < Count; index++)
{
list->GetText(index, str);
AfxMessageBox(str);
}
这个例子就是将每个字段的内容以对话框形式输出
Global Const WM_USER = &H400
Global Const LB_GETCOUNT = (WM_USER + 12)
Public Declare Function SendMessageBynum& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long)
Private Sub Command1_Click()
Dim Count As Long
Count = SendMessageBynum&(Listhwnd, LB_GETCOUNT, 0, 0)
End Sub
附带奉送 SDK API 中 和ListBox相关的消息:
LB_ADDFILE
LB_ADDSTRING
LB_DELETESTRING
LB_DIR
LB_FINDSTRING
LB_FINDSTRINGEXACT
LB_GETANCHORINDEX
LB_GETCARETINDEX
LB_GETCOUNT
LB_GETCURSEL
LB_GETHORIZONTALEXTENT
LB_GETITEMDATA
LB_GETITEMHEIGHT
LB_GETITEMRECT
LB_GETLOCALE
LB_GETSEL
LB_GETSELCOUNT
LB_GETSELITEMS
LB_GETTEXT
LB_GETTEXTLEN
LB_GETTOPINDEX
LB_INITSTORAGE
LB_INSERTSTRING
LB_ITEMFROMPOINT
LB_RESETCONTENT
LB_SELECTSTRING
LB_SELITEMRANGE
LB_SELITEMRANGEEX
LB_SETANCHORINDEX
LB_SETCARETINDEX
LB_SETCOLUMNWIDTH
LB_SETCOUNT
LB_SETCURSEL
LB_SETHORIZONTALEXTENT
LB_SETITEMDATA
LB_SETITEMHEIGHT
LB_SETLOCALE
LB_SETSEL
LB_SETTABSTOPS
LB_SETTOPINDEX
LBN_DBLCLK
LBN_ERRSPACE
LBN_KILLFOCUS
LBN_SELCANCEL
LBN_SELCHANGE
LBN_SETFOCUS
WM_CHARTOITEM
WM_CTLCOLORLISTBOX
WM_DELETEITEM
WM_VKEYTOITEM
建立一个listbox
把listbox的Style属性设置成 1-checkbox
Private Sub Form_Load()
Dim a(0 To 10) As Integer
For i = 0 To 10
a(i) = i
List1AddItem a(i), i
List1Selected(i) = True
Next i
End Sub
还有个就是MultiSelect属性如果选true,就是可以多选了,
List1SelCount
Private Sub Form_Load()
For i = 0 To 2
For j = 1 To 100
List1(i)AddItem j 250
Next j
Next i
End Sub
Private Sub List1_Click(Index As Integer)
Label1(Index)Caption = "当前共选中" & List1(Index)SelCount & "项"
End Sub
注:List1(0)Style=1,List1(1)MultiSelect=0;
List1(1)Style=0,List1(1)MultiSelect=1;
List1(1)Style=0,List1(1)MultiSelect=2 。
excelvba如何统计在列表框中选择的行数?
方法一:1 首先在 Excel 中插入一个控件:列表框;
2 然后右键单击列表框,选择“查看代码”,在d出的 VBA 编辑窗口中,输入以下代码:Private Sub ListBox1_Click()
MsgBox ListBox1ListCount
End Sub3 保存代码,在列表框中选择行,即可显示选择的行数。
方法二:1 在 Excel 中插入一个控件:列表框;
2 在 Excel 中插入一个按钮,右键单击按钮,选择“查看代码”,在d出的 VBA 编辑窗口中,输入以下代码:
Private Sub CommandButton1_Click()
MsgBox ListBox1ListCount
End Sub
3 保存代码,单击按钮,即可显示选择的行数。
以上就是关于vb问题 listbox里面存有数据,如何读取有几行数据全部的内容,包括:vb问题 listbox里面存有数据,如何读取有几行数据、ListBox 得到行数和内容 vc++问题、取得LISTBOX 行数 VB问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)