windows上的许多应用程序只是用“是”/“否”或“确定”/“取消”button显示简单的消息框。 在非英文版的windows中,文本通常会变得更糟,文本是英文的,但button却是用windows的语言标记的。
是否没有简单的API来显示带有自己的button标签的消息框,例如“删除”或“保持”?
龟SVN现在崩溃了,它有一个错误
在WOW64中捕获HANDLE的创build
安装/使用Ruby 2.x和Qt 5
为什么object_ID在不在linux上的时候在windows上仍然存在?
windows上的MobaXterm Home启动时不会读取本地.bashrc
就像DavIDHeffernan所说,你应该使用TaskDialogIndirect() ,因为它本身支持自定义按钮。 但只有Vista和更高版本才可用。
在XP和更早版本中,您可以使用SetwindowsHookEx()来安装线程本地WH_CBT挂钩或使用SetWinEventHook()来获取对话框中的标准MessageBox() (或者真的,任何您想要的自定义MessageBox()上的按钮标题HWND创建时,你可以 *** 纵对话框,但是你想要的。 您可以使用GetDlgitem()获取各个按钮的HWND (因此可以使用标准的API函数/消息),和/或使用GetDlgitemText()更改它们的标题。 每个按钮的CtrlID与MessageBox()在单击该按钮时返回的值相同。
确实有这样一个Win32函数。 这是TaskDialogIndirect 。 请注意,它是在Vista中引入的,所以如果您仍然试图支持XP,那么您需要为该平台提供回退选项。
Codeproject这个项目提供了一个相当不错的替代MessageBox ,允许替换其他功能中的按钮标签。
它基本上是一个重写的MessageBox函数,它是标准windows MessageBox函数的超集。 提供完整的源代码,以便您根据需要轻松地适应您的需求。
而且它是纯粹的Win32,这里没有介入MFC。
总结以上是内存溢出为你收集整理的带有自己的button文本的消息框全部内容,希望文章能够帮你解决带有自己的button文本的消息框所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)