导航
  • 主页
  • VC综合技术
  • 互联网技术
  • MFC AppLauncher
  • .NET 技术
  • 界面
  • 进程
  • 算法
  • 硬件/系统
  • 数据库
  • VC++技术资源

如何更改窗体的标题?

szchengyu 2002-07-25 02:40:03
我想在程序里点一个菜单项或按钮,然后改变窗口的标题(主窗口或子窗口),
不知道如何下手,

Dialog 类程序我会了,但 MDI 的不会:(

此致

----------[我是初学我怕谁]
...全文
132 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
szchengyu 2002-07-26
georgehuang:

我知道是窗口的句柄,但我不知道在 VC 里如何表示:(
回复
YangyiOfWh 2002-07-25
SetWindowsText
回复
远古猛犸象 2002-07-25
到app类的初始化函数那里,很方便的.
回复
georgehuang 2002-07-25
你的窗口的句柄啊,
回复
szchengyu 2002-07-25
各位,先谢了!

另外:

若用 API SetWindowText 的话,第一个参数 HWND hWnd 应该用什么呀?
回复
FFXI 2002-07-25
MDI中,调用CDocument::SetTitle( LPCTSTR lpszTitle );

回复
dw1977 2002-07-25
调用CWnd : : SetWindowText可以改变任何窗口(包括控件)的标题。

//Set title for application's main frame window .

AfxGetMainWnd ( ) —> SetWindowText (_T("Application title") );

//Set title for View's MDI child frame window .

GetParentFrame ( ) —> SetWindowText ("_T ("MDI Child Frame new title") );

//Set title for dialog's push button control.

GetDigitem (IDC_BUTTON) —> SetWindowText (_T ("Button new title ") );

  如果需要经常修改窗口的标题(注:控件也是窗口),应该考虑使用半文档化的函数AfxSetWindowText。 该函数在AFXPRIV.H中说明,在WINUTIL.CPP中实现,在联机帮助中找不到它,它在AFXPRIV.H中半文档化,  在以后发行的MFC中将文档化。 AfxSetWindowText的实现如下:

  voik AFXAPI AfxSetWindowText (HWND hWndCtrl , LPCTSTR IpszNew )

{

  itn nNewLen= Istrlen (Ipaznew);

  TCHAR szOld [256];

  //fast check to see if text really changes (reduces flash in the controls )

  if (nNewLen >_contof (szOld) ||

    : : GetWindowText (hWndCrtl , szOld , _countof (szOld) !=nNewLen||    

Istrcmp (szOld , IpszNew )! = 0

{

  //change it

     : : SetWindowText (hWndCtrl , IpszNew );

  }

}

11.如何防止主框窗口在其说明中显示活动的文档名

  创建主框窗口和MDI子窗口进通常具有FWS_ADDTOTITLE风格位, 如果不希望在说明中自动添加文档名, 必  须禁止该风格位, 可以使用ClassWizard重置CWnd: : PreCreateWindow并关闭FWS_ADDTOTITLE风格。

  BOOL CMainFrame : : PreCreateWindow (CREATESTRUCT&cs)

{

  //Turn off FWS_ADDTOTITLE in main frame .

  cs.styel & = ~FWS_ADDTOTITLE ; 

  return CMDIFrameWnd : : PreCreateWindow (cs );

}

  关闭MDI子窗口的FWS _ADDTOTITLE风格将创建一个具有空标题的窗口,可以调用CWnd: : SetWindowText来 设置标题。记住自己设置标题时要遵循接口风格指南。

回复
wwrrcc2002 2002-07-25
SetWindowText(),你是一下
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……