标题:[求助]什么控件能实现按列显示数据并能进行多行操作
只看楼主
cnliang
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-4-1
 问题点数:0 回复次数:9 
[求助]什么控件能实现按列显示数据并能进行多行操作
   我想做一个框,里面按列显示姓名和手机号码,格式如图:



       但在用DataGrid控件来实现时发现一个问题:
       我只能对其中的数据进行单行操作或全部清空,而不能按意愿进行随机多选操作,请问DataGrid控件能实现多选操作吗?如果能我该怎么做?如果不能,我该改用什么控件?
搜索更多相关主题的帖子: 控件 手机号码 数据 DataGrid 
2005-04-13 16:44
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 
DataGrid就可以

天津网站建设 http://www./
2005-04-13 21:04
cnliang
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-4-1
得分:0 
       群发时的手机号码一部份是调用数据库中的“通讯录”表,另一部份则可能是临时手动添加的(不通过数据库),请问DataGrid能实现这两者的结合吗?


[此贴子已经被作者于2005-4-14 8:54:58编辑过]



耐心和持久 胜过 激烈和狂热
2005-04-14 08:50
sfg976
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2005-4-13
得分:0 
当然可以
2005-04-14 09:25
cnliang
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-4-1
得分:0 
请问大家谁有用DataGrid控件实现了的多选的例子,共享一个好吗?是不是用键盘的Shift&Ctrl事件来实现的?

耐心和持久 胜过 激烈和狂热
2005-04-14 10:39
cnliang
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-4-1
得分:0 
试了N天了,还是只能实现从数据库中调用数据并按行显示在DataGrid控件中,一直实现不了把某一个字符串(手动输入的手机号码)赋值给其中的某一行,如果真的有这种功能,请知道的把方法说一下吧!谢谢了!!!

耐心和持久 胜过 激烈和狂热
2005-04-21 17:29
cnliang
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-4-1
得分:0 
实在没办法了,看来只能用ListBox控件来做了(毕竟多选的功能是现成的),但还有一个问题就是:
       由于每行要显示两个字符串"姓名"&"手机号码",结果导致手机号码上下行不会对齐,难看死了,请问有没有比较好的办法使得不管姓名长度是多少,都能实现手机号码的第一个字符是对齐的?



[此贴子已经被作者于2005-4-22 10:44:16编辑过]



耐心和持久 胜过 激烈和狂热
2005-04-22 10:43
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 
可以在中间加入一个或多少vbTab来对齐

Private Sub Command1_Click()
    List1.AddItem Text1.Text & vbTab & Text2.Text
End Sub

天津网站建设 http://www./
2005-04-22 12:20
cnliang
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-4-1
得分:0 
以下是引用griefforyou在2005-4-22 12:20:56的发言: 可以在中间加入一个或多少vbTab来对齐 Private Sub Command1_Click() List1.AddItem Text1.Text & vbTab & Text2.Text End Sub

我用了上述方法来做,又发现一个新问题: 由于点击"从通讯录获取手机号码"按钮后弹出的通讯录是一个前面带复选框的ListBox控件(Form2中的List2),上面按行显示了可供选择的姓名和手机号码;而短信发送界面上是用一个不带复选框的ListBox控件(Form1中的List1)来显示已选择或已输入的手机号码,结果导致如果我设法让通讯录里的姓名和手机号码是对齐的,则发送界面上的就不会对齐,而如果我设法让发送界面的姓名和手机号码是对齐的,则通讯录里的就不能对齐,郁闷中,不知如何是好。

在代码中我是直接把通讯录中的选中行的内容添加到短信发送界面 If List2.ListCount > 0 Then For i = 0 To List2.ListCount - 1 If List2.Selected(i) = True Then Form1.List1.AddItem List2.List(i) ...... 一、通讯录不对齐:

发送界面会对齐:

二、通讯录对齐:
发送界面不对齐:

[此贴子已经被作者于2005-4-22 17:12:43编辑过]


耐心和持久 胜过 激烈和狂热
2005-04-22 17:04
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 
晕。。。

你非要对器的话,用ListView控件。

天津网站建设 http://www./
2005-04-22 17:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-15547-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.246836 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved