繁体   English   中英

C ++ Win32在按钮上无法对齐文本

[英]C++ Win32 Having Trouble Aligning Text on a Pushbutton

这应该很简单,但是我无法一生找出它为什么不起作用的原因。 我做了很多谷歌搜索和MSDN,找不到更多有用的东西。

    SendMessage(GetDlgItem(hwnd, IDC_ANCIENT), BM_SETSTYLE, (WPARAM)(BS_LEFTTEXT), (LPARAM)TRUE);
    Button_SetStyle(GetDlgItem(hwnd, IDC_ANCIENT), BS_LEFTTEXT, TRUE);

那就是我所拥有的。 参数正确,我测试了BS_3STATE样式,并且该样式有效。 我准备重绘。 我在对话框的WM_INITDIALOG消息中包含这些行。

该对话框及其上的所有内容都包含在我的资源文件中。

有任何想法吗?

谢谢。

http://imageshack.us/a/img153/6594/rydv.jpg

BS_LEFTTEXT对按钮不起作用。 MSDN (添加重点):

BS_LEFTTEXT 与单选按钮或复选框样式结合使用时 ,在单选按钮或复选框的左侧放置文本。 与BS_RIGHTBUTTON样式相同。

对于您想要的内容,您可能需要执行所有者绘制控件。 在同一链接上查看BS_OWNERDRAW样式。

我下载了一个资源文件编辑器,并找到了解决方案。

           DEFPUSHBUTTON      "Ancient Crystal [Click]",IDC_ANCIENT,15,292,140,12, BS_LEFT 

如果将BS_LEFT样式放在资源文件中,它将使文本左对齐。

编辑:最后的说明,我试图在没有适当对话框对话框的过程中更改字体对齐方式。 我把程序的句柄交给了主窗口。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM