簡體   English   中英

如何添加邊框或以其他方式強調3D樣式的按鈕?

[英]How can I add a border, or otherwise emphasize a 3d-styled button?

我有一組標有1,2和3的三個按鈕,用於觸摸屏應用程序界面。

當用戶點擊一個時,它應該被“選中”並有一些明顯的變化來顯示這一點。

當使用平面按鈕樣式時,我可以使用邊框執行此操作,但似乎這不適用於具有默認/ 3d樣式的按鈕。

我注意到背景顏色可以設置,但這似乎只適用於普通顏色,通常看起來很難看。

有沒有辦法可以添加像邊框這樣的東西或者以另一種方式強調“選中”的3D樣式按鈕? 是否有更好的控制用於此目的適用於觸摸屏界面?

按鈕不能指示“已選擇”狀態,它只能具有焦點。 哪個在觸摸屏應用程序中沒用。

你想要的是一個CheckBox。 這也支持看起來像一個按鈕,將其Appearance屬性設置為Button。 您可以通過修改FlatStyle屬性來進一步修改它的外觀。 例如,通過將其設置為Popup,它會在選中時獲取3D外觀。

好吧,我能夠使用以下方法添加插入邊框:

class BorderButton : Button
{
    protected override void OnPaint(PaintEventArgs e)
    {
        base.OnPaint(e);

        e.Graphics.DrawRectangle(new Pen(Color.Black, 6), this.DisplayRectangle);
    }
}

然而,看起來油漆事件不能在按鈕的邊界之外繪制,因此使用這種技術是不可能的。

我遇到了同樣的問題,現在總是使用標簽代替。 這樣,您可以捕獲on_click或mousedown事件並應用背景顏色或圖像,就像它是一個按鈕一樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM