我在一个dialog里面加了一些控件,我想在创建的时候取得控件的指针,从面对这些控件更改标题字体。 我在OnCreate里面取这些控件的指针,好像不行。我想知道,窗口在创建过程中是发送了什么消息的,从开始到完成的过程的消息。 这是这样写的。
int CFontViewDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDialog::OnCreate(lpCreateStruct) == -1)
return -1; // TODO: Add your specialized creation code here
// set font type for the title of the controls
CWnd *pWnd=NULL; pWnd=GetDlgItem(IDC_TYPEFACES);
pWnd->SetFont(&m_mainFont); pWnd=GetDlgItem(IDC_BUTTON);
pWnd->SetFont(&m_mainFont); pWnd=GetDlgItem(IDC_LIST);
pWnd->SetFont(&m_mainFont); pWnd=GetDlgItem(IDC_CHECK);
pWnd->SetFont(&m_mainFont); pWnd=GetDlgItem(IDC_GROUPBOX);
pWnd->SetFont(&m_mainFont); return 0;
}
我记得是在OnCreate里面postmessage好像可以的。因为这以前创建过进度条是那样的。 但如果不那样,我又要在显示出的时候更改字体,要怎样呢? 谢谢。
int CFontViewDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDialog::OnCreate(lpCreateStruct) == -1)
return -1; // TODO: Add your specialized creation code here
// set font type for the title of the controls
CWnd *pWnd=NULL; pWnd=GetDlgItem(IDC_TYPEFACES);
pWnd->SetFont(&m_mainFont); pWnd=GetDlgItem(IDC_BUTTON);
pWnd->SetFont(&m_mainFont); pWnd=GetDlgItem(IDC_LIST);
pWnd->SetFont(&m_mainFont); pWnd=GetDlgItem(IDC_CHECK);
pWnd->SetFont(&m_mainFont); pWnd=GetDlgItem(IDC_GROUPBOX);
pWnd->SetFont(&m_mainFont); return 0;
}
我记得是在OnCreate里面postmessage好像可以的。因为这以前创建过进度条是那样的。 但如果不那样,我又要在显示出的时候更改字体,要怎样呢? 谢谢。
2.OnCreate() 消息响应函数,响应WM_CREATE消息,发送此消息以告诉一个窗口已经被创建
3.OnSize() 消息响应函数,响应WM_SIZE消息,发送此消息以告诉窗口大小发生变化
4.OnMove() 消息响应函数,响应WM_MOVE消息,发送此消息以告诉窗口正在移动
5.OnSetFont() 消息响应函数,响应WM_SETFONT消息,发送此消息以允许改变对话框中控件的字体 MFC应用程序中打开模式对话框的函数调用顺序1.DoModal() 重载函数,重载DoModal()成员函数
2.PreSubclassWindow() 重载函数,允许首先子分类一个窗口
3.OnCreate() 消息响应函数,响应WM_CREATE消息,发送此消息以告诉一个窗口已经被创建
4.OnSize() 消息响应函数,响应WM_SIZE消息,发送此消息以告诉窗口大小发生变化
5.OnMove() 消息响应函数,响应WM_MOVE消息,发送此消息,以告诉窗口正在移动
6.OnSetFont() 消息响应函数,响应WM_SETFONT消息,发送此消息,以允许改变对话框中控件的字体
7.OnInitDialog() 消息响应函数,响应WM_INITDIALOG消息,发送此消息以允许初始化对话框中的控件,
或者是创建新控件
8.OnShowWindow() 消息响应函数,响应WM_SHOWWINDOW消息,该函数被ShowWindow()函数调用
9.OnCtlColor() 消息响应函数,响应WM_CTLCOLOR消息,被父窗口发送已改变对话框或对话框上面控件
的颜色
10. OnChildNotify() 重载函数,作为WM_CTLCOLOR消息的结果发送