有关VC6.0对话框编程

最近在帮一个朋友写个小程序,我是用VC写的。主要是基于对话框的编程。其中有些是经常要用到的,故特记录一些在编写过程中遇到的问题。

1.是采用模态还是非模态的方式创建对话框。 这个问题要弄清楚这两种方式的创建方法和对话框结束是消息的处理过程了。模态方式创建是通过Domodel()函数创建,而且结束也是调用OnCancel()自动回收资源。模态的话会垄断用户的操作,也就是在当前对话框没有结束前不能对其他窗口进行操作,而且它采用的消息流是循环的。相当于级联调用的意思。非模态必须通过new和Create()来创建窗口。而非模态方式的话可以在多个窗口之间切换操作。而且其结束后必须调用DistroyWindow()来结束对话框资源。

 

2.如何设置静态文本的背景颜色和字体颜色问题

可以给对话框添加WM_CTLCOLOR的映射函数,在函数

HBRUSH CPart2_1Dlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
	
	// TODO: Change any attributes of the DC here
	
	// TODO: Return a different brush if the default is not desired
	return hbr;
}

 

中添加 if(pWnd->GetDlgCtrlID()==这里写你要改变的控件ID) { pDC->SetTextColor(RGB(255,0,0)); }

RGB(255,0,0)表示红色。可以改变其RGB设置其他颜色了。当然这种方法也可以改变按钮,输入框等控件的字体颜色和背景色了。

 

3.设置文本的内容。

可以通过指向对话框的指针变量来调用如下函数

testDlg->SetDlgItemText(IDC_STATIC_1,"Test set item's text");

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值