我爱Aspx >> VC.Net >> 在VC中MSFlexGrid内嵌EDIT、COMBOBOX的实现方法这个函数的作用,主要是支持MSFlexGrid的编辑,并把你的内嵌控件显示出来,当然,如果它是一个EDIT,那么我们有责任把EDIT内的光标置于EDIT中字串的最后。这个函数有两个参数:
WORD nKeyAsciiCode:如果激活编辑FlexGrid的事件是一次按键,那么这个参数当然就和按键的信息有关了,另外在函数中,通过它可以实现支持中文,比如:您把焦点放到一个内嵌为EDIT的网格中[只是让FlexGrid的网格得到焦点,而不让内嵌的EDIT显示出来],直接输入中文,然后就会发现,网格自动进入编辑状态,并且你输入的中文汉字位于字串的最后:
第二个参数:
CWnd *p_wnd可以指定你想使用的内嵌控件,传入时可以使用&m_edit或&m_cmb。
当然,你可以不指定它而用我们当初设置好的规则[这规则是指MSFlexGrid哪列固定采用哪个内嵌控件],这是用什么实现的呢?
看到函数GridEdit中的
if(p_wnd == NULL)
{
p_wnd = GetThisCellMaskControl();
}
了吧?
CWnd * CProg5Dlg::GetThisCellMaskControl()
{
switch(m_FlexGrid.GetCol())
{
//第一列,第三列用ComboBox做为内嵌控件
case 1:
case 3:
return &m_cmb;
break;
//其它的用Edit
default:
return &m_edit;
}
}
我们可通过这个函数来设定一些基本规则。
那么GridEdit函数是由谁来调用的呢?答案当然是由想实现编辑网格的事件触发的,在这里我设定为鼠标双击和网格有焦点时的按键事件:
【我对这篇文章有话说?】
Com Introduction[05-21]
《COM技术内幕》FAQ[05-21]
关于COM中的复合文档[05-21]
Microsoft Windows CE 3.0中的CO..[05-21]
如何在VC6或者VC7下用 ATL做一个..[05-21]
COM指南 (Step by Step COM Tuto..[05-21]
COM指南 (Step by Step COM Tuto..[05-21]
COM指南 (Step by Step COM Tuto..[05-21]
COM指南 (Step by Step COM Tuto..[05-21]
[原创]理解I/O Completion Port[05-21]
c++入门学习笔记指针篇[05-21]
C++好网站及其他网站收录[05-21]
VC程序员openssl轻松入门![05-21]
《决策智能系统》开发计划摘要[05-21]
MISRA--作为工业标准的C编程规范[05-21]
一个软件测试工程师的加班经历[05-21]
在vc++.net托管中使用线程的一个..[05-21]
PMT资源之Open Source多媒体软件[05-21]
初为项目经理(完整版)[05-21]
传递自动化字符串数组[05-21]