Visual C++ MFC 简明教程(3)
2007-03-18 21:27:56 来源:WEB开发网SS_GRAYRECT 该控制以填充的矩形显示。颜色与当前的桌面相同。
SS_ICON 控制以图标形式显示。文本作为图标在资源文件的名称。rect参数只控制位置。
SS_LEFT 文本居左显示。文字可回绕。
SS_LEFTNOWORDWRAP 文本居左显示。多余的文字被剪裁。
SS_NOPREFIX 表示字符串中的"&"字符不表示为加速前缀。
SS_RIGHT 文本居右显示。文字可回绕。
SS_SIMPLE 只简单的显示一行文本。任何CTLCOLOR信息都被其父窗口忽略。
SS_USERITEM 用户定义项。
SS_WHITEFRAME 控制以矩形边框方式显示。颜色与当前窗口背景颜色相同。
SS_WHITERECT 控制以填充矩形方式显示。颜色与当前窗口背景颜色相同。
这些常数中,“SS”(Static Style)开头的表示只能用于CStatic控制。以“WS”(Window Style)开头的常数表示可适用于所有窗口,它们定义在CWnd对象中。CWnd中还有很多以“WS”样式常数。你可以在MFC文档中的CWnd::Create函数中找到它们。上面的四种是只用于CStatic对象的。
CStatic对象至少要带有两个样式:WS_CHILD和WS_VISIBLE。该控制必须作为另一窗口的子窗口来建立。如果不使用WS_VISIBLE,则所建立的控制是看不见的。WS_DISABLED控制着标签对事件的响应,因为CStatic不接收键盘或鼠标事件,所以使用该项是多余的。
所有的其它样式选项都是可选的,它们控制着标签的外观。在CStatic::Create函数中使用这些控制,可以控制CStatic在屏幕上的显示。
CStatic文本的外观
下面的代码对于理解CStatic是有帮助的。它与上一讲中介绍的代码类似,但是修改了CStatic的建立部分。
//static1.cpp
#include
// Declare the application class
class CTestApp : public CWinApp
{
public:
virtual BOOL InitInstance();
};
// Create an instance of the application class
CTestApp TestApp;
// Declare the main window class
class CTestWindow : public CFrameWnd
{
CStatic* cs;
public:
CTestWindow();
};
// The InitInstance function is called
// once when the application first executes
BOOL CTestApp::InitInstance()
{
m_pMainWnd = new CTestWindow();
m_pMainWnd->ShowWindow(m_nCmdShow);
m_pMainWnd->UpdateWindow();
return TRUE;
}
// The constructor for the window class
CTestWindow::CTestWindow()
{
CRect r;
// Create the window itself
Create(NULL,
"CStatic Tests",
WS_OVERLAPPEDWINDOW,
CRect(0,0,200,200));
// Get the size of the client rectangle
GetClientRect(&r);
r.InflateRect(-20,-20);
// Create a static label
cs = new CStatic();
cs->Create("hello world",
WS_CHILD|WS_VISIBLE|WS_BORDER|SS_CENTER,
r,
this);
}
下面是窗口构造函数加上了行编号:
- ››Visual Basic 2008 数学函数
- ››Visual Studio2005中Smart Device的问题
- ››Visual Studio 中根据数据库字段动态生成控件
- ››Visual Studio 11全新黑色主题
- ››Visual Studio 2011 Beta新特性(一):安装VS201...
- ››MFC中有多个slider时OnHScroll函数判断方法
- ››MFC自绘按钮
- ››Visual Studio自定义调试窗体两个小技巧
- ››Visual Studio 2005 Team Edition for Database P...
- ››Visual C#两分钟搭建BHO IE钩子
- ››Visual C++优化对大型数据集合的并发访问
- ››VISUAL C++中的OCX控件的使用方法
更多精彩
赞助商链接