2013-09-05 177 views
3

我在我的WinForms應用程序中有一個按鈕,並向它添加了圖像和文本。我把文本對齊到右邊,想把背景圖像對齊到左邊,但發現這是不可能的。對齊按鈕背景圖像

有沒有辦法做到這一點?

我也嘗試設置按鈕上的圖像,但無法在按鈕屬性中調整大小。

有人可以幫我解決這個問題嗎?非常感謝。

萬一這是不可能的,我將不得不調整mspaint每個圖像的大小。

這是結果(如背景):

enter image description here

我需要和backgroundImage左對齊。

這是使用時對齊(無法調整)

enter image description here

+0

這是否有助於'ImageAlign:MiddleRight TextAlign:MiddleLeft' Ref。 http://stackoverflow.com/questions/507380/button-image-too-far-from-top-of-button-too-close-to-bottom-of-button – user1477388

+0

任何屏幕截圖? –

+0

@KingKing請看我編輯的問題。 – Marek

回答

6
  1. 使用Image屬性來設置你的形象(確保它適合按鈕高度,可以改變圖像大小,如果你會從項目資源文件夾中打開它)
  2. 設置ImageAlignMiddleLeft
  3. 設置TextAlignMiddleRight

不要改變其他東西。即TextImageRelation應該是Overlay。結果:

enter image description here

+0

你好,感謝你的迴應,但我仍然得到了相同的結果,除了圖像是在中間,但頂部和圖像按鈕由於按鈕高度不可見。有什麼建議嗎? – Marek

+0

@Marek你使用'Image'屬性來設置圖像嗎?還要確保你提供了正確的對齊方式。看起來你有默認的'MiddleCenter'對齊。 –

+0

感謝您的回答,但在最後我調整了圖像的大小24x24所需的大小,它解決了我的問題。謝謝你的一切。 – Marek

2

可以使用Image屬性而不是BackgroundImage結果作爲圖像。您可以稍後使用ImageAlign屬性設置對齊。

+0

是的,但之後我無法調整它的大小。 – Marek

3

SET按鈕的這些屬性。

ImageAlign to MiddleRight 
TextImageRelation to ImageBeforeText 
TextAlign as MiddleCenter 

讓它在Button上調整大小。見下:

Bitmap image = Bitmap.FromFile(oFile) as Bitmap; 
Bitmap resized = new Bitmap(image, new Size(30, 30)); 
button1.Image = resized; 
button1.Text = "Button"; 
button1.ImageAlign = ContentAlignment.MiddleLeft; 
button1.TextImageRelation = TextImageRelation.ImageBeforeText; 
button1.TextAlign = ContentAlignment.MiddleRight;