2024年5月7日发(作者:)

改变窗口的外观和大小

改变窗口的外观和大小需要在窗口创建以前改变。 所以我们可以在CMainFrame的

PreCreateWindow中改变CREATESTRUCT 结构体的值就行了。

E.G.

BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)

改变窗口的大小 -> = 300; = 200;

改变窗口的显示位置坐标是 cs.x 和 cs.y

这里常用的一个函数是::GetSysMetrics(SM_CXSCREEN);

::GetSysMetrics(SM_CYSCREEN);

用来取得屏幕的大小。

要改变窗口标题栏的字符串:

me = "Seven"; 会发现标题栏不会改变窗口的标题栏的上的字符串。

改变单文档应用程序的标题栏的字符串 参考MSDN window

stylesFrame-window styles 下面有一个Changing the styles of a window create by

MFC. The SDI Case

默认的情况是WS_OVERLAPPEDWINDOW and FWS_ADDTOTITLE styles

FWS_ADDTOTITLE is add the document title to the window’s caption.

去掉FWS_ADDTOTITLE 就可以更改窗口标题栏字符串。

&= ~FWS_ADDTOTITLE;

me = "Seven";

如果我们需要改变背景, 画刷, 光标等等时候。

我们可以在:PreCreateWindow中创建窗口类, WNDCLASS wndClass;

把这个类里的值改变成自己想要的内容就可以了。

E.G.

xtra = 0;

xtra = 0;

kground = (HBRUSH)GetStockObject(DKGRAY_BRUSH);

r = LoadCursor(NULL, IDC_WAIT);