簡體   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