发信人: zhongwei-gz(下学期要补考)
整理人: winsy(2003-07-28 09:03:17), 站内信件
|
【 在 whbqa 的大作中提到:】
:在VB里的DataGrid表,我选一行不要让它进入一个字段的编辑状态,而是一行都显示为蓝色,
:即我用鼠标点表里一条记录时,默认这条记录的这个点击字段显示蓝色,处于编辑状态,我想整个表不能编辑,点记录时,这条记录都显示蓝色。如何实现。谢谢!!!
:......
以下为转贴:
来源:http://www.china-askpro.com/msg39/qa81.shtml
fm:
如何实现单击后被选中单元格所在行改变颜色,并弹出消息框,显示被选中单元格的内容?类似问题:如何实现双击后立即跳出一对话框?
回答:
1、DataGrid控件本身不可能做到象你提到的这种功能。
2、在窗口的DataGrid控件上单击,在弹出菜单上选“折分“页的”记录选择器“每行前有个指示器,击指示器可选中该行。
3、这是个笨方法
(A)在单击事件中取(li_count=DataGrid1.Columns.Count)表总列数。
(B)动态生成一个文本框控件数组(TEXT[li_count],(最好用LABEL控件, 将其设为透时的也可。)修改每个元素以下属性:APPEARANCE设为0-FLAT, BORDERSTYLE为0-NONE,VISIBLE设为FALSE。
(C)在ROWCOLCHANGE事件中取(DataGrid1.Columns(第几列).Text)各列的值赋 给控件数组,并改控件数组的背景为你想要的颜色。(用LABEL可略此步)
(D)DataGrid1.Columns(0).Left取第一列的左边界, DataGrid1.Columns(0).TOP 取第一列的上边界,
DataGrid1.Columns(0).width
DataGrid1.Columns(0).height 赋给应放在当前行的文本控件的相应属性。
(E)设所有控件是可见的。
4、显示所选中的数据。在DATAGRID1的ROWCOLCHANGE事件中
dim li_data as string
dim li_col as integer
li_col =datagrid1.col
li_data=DataGrid1.Columns(li_col).Text
li_col=msgbox(li_data,vbOKOnly)
5.双击显示对话框
(a)在窗口中放MS common Dialog control 6.0控件
(b)在DATAGRID控件的双击中写
CommonDialog1.ShowOpen可以显示打开文件对话框。
---- 断 夕 古 小 枯
肠 阳 道 桥 藤
人 西 西 流 老
在 下 风 水 树
天 瘦 人 昏
涯 马 家 鸦 |
|