现在的位置: 首页 > 综合 > 正文

Visual C++编程技巧之六

2013年10月10日 ⁄ 综合 ⁄ 共 1063字 ⁄ 字号 评论关闭
Visual C++编程技巧之六  

 

41、如何一个创建三态下压按钮

42、如何动态创建控件

43、如何限制编辑框中的准许字符

44、如何改变控件的颜色

45、当向列表框中添加多个项时如何防止闪烁

46、如何向编辑控件中添加文本

47、如何访问预定义的GDI对象

48、如何获取GDI对象的属性信息

  

41、如何一个创建三态下压按钮

可以使用新的BS_PUSHBUTTON 风格位和检测框以及按钮来创建一个三态下压按钮。这很容易,只需将检测框和按钮拖拉到对话中并指定属性Pushlike即可。不用任何附加程序就可以成为三态下压按钮。

42、如何动态创建控件

分配一个控件对象的实例并调用其Create成员函数。开发者最容易忽略两件事:忘记指定WS_VISBLE标签和在栈中分配控件对象。下例动态地创建一个下压按钮控件:

//In class declaration (.H file ).

private :

CButton* m _pButton ;

//In class implementation (.cpp file ) .

m_pButton =new CButton ;

ASSERT_VALID (m_pButton);

m_pButton >Create (_T ("Button Title ") , WS_CHILD WS_VISIBLE BS_PUSHBUTTON.

Crect ( 0, 0, 100 , 24) , this , IDC _MYBUTTON )

43、如何限制编辑框中的准许字符

如果用户在编辑控件中只允许接收数字,可以使用一个标准的编辑控件并指定新的创建标志ES_NUMBERS,它是Windows 95新增加的标志,该标志限制 编辑控件只按收数字字符。如果用户需要复杂的编辑控件,可以使用Microsoft 的屏蔽编辑控件,它是一个很有用的OLE定制控件。

如果希望不使用OLE 定制控件自己处理字符,可以派生一个CEdit 类并处理WM_CHAR消息,然后从编辑控件中过滤出特定的字符。首先,使用ClassWizard 建立一个 CEdit的派生类,其次,在对话类中指定一个成员变量将编辑控件分类在OnInitdialog 中调用CWnd: : SubclassDlgItem .

//In your dialog class declaration (.H file )

private :

CMyEdit m_wndEdit ; // Instance of your new edit control .

//In you dialog class implementation (.CPP file )

BOOL CSampleDialog : : OnInitDialog ( )

-->

作者:

抱歉!评论已关闭.