摘要: 先看下面三条语句:(1)#define Conn(x,y) x##y(2)#define ToChar(x) #@x(3)#define ToString(x) #x(1)##,连接操作符x##y表示什么?表示x连接y,举例说:int n = Conn(123,456); 结果就是n=123456;char* str = Conn("asdf", "adf")结果就是 str = "asdfadf";(2)#@,字符化操作符只能用于有传入参数的宏定义中,且必须置于宏定义体中的参数名前。作用是将传的单字符参数名转换成字符,以一对单引用括 阅读全文
posted @ 2013-01-09 20:10 执迷不悟~ 阅读(717) 评论(0) 推荐(0)
摘要: 方法一:调用CWinApp类的成员函数SetDialogBkColor来实现。 (这个函数已经废弃)void SetDialogBkColor(COLORREF clrCtlBk = RGB(192, 192, 192), COLORREF clrCtlText = RGB(0, 0, 0));其中函数的第一个参数指定了背景颜色,第二个参数指定了文本颜色。在InitInstance()中添加如下代码:SetDialogBkColor(RGB(0,0,255),RGB(255,0,0)); 值得注意的是:在调用DoModal()之前必须先调用SetDialogBkColor。这种方法经过笔者验. 阅读全文
posted @ 2013-01-09 16:10 执迷不悟~ 阅读(41017) 评论(0) 推荐(1)
摘要: 很多同学在绘制UI时喜欢将窗口或者对话框设置成无边框无标题栏样式,然后在客户区里就可以”胡作非为“了,想干什么都行然而新手们包括笔者以前都遇到的一个问题是:对于对话框来说直接这样设置:ModifyStyle(WS_CAPTION | WS_THICKFRAME, 0, SWP_FRAMECHANGED);是不完美的,他们会发现在对话框的情况下,那个border还是存在,最后怎么设置都不可行,对于一般从CWnd派生然后用Create方法创建的窗口却没什么问题。解决方案:这里我告诉你如何设置,以下代码适用所有窗口,设置后边框没了,标题栏也没了纯净的客户区就美丽的显示在你的面前: DWORD ... 阅读全文
posted @ 2013-01-09 13:26 执迷不悟~ 阅读(2913) 评论(0) 推荐(0)