修改按鈕的樣式

2021-05-06 16:55:52 字數 1121 閱讀 5151

修改按鈕的樣式

有過程式設計經歷的網友都知道,vs 2008預設生成的按鈕在編輯狀態下的樣式還看得順眼,但執行時的外觀就不堪入目了,跟windows 98的主題差不多,很死板。我們能不能修改一下按鈕的外觀呢?

答案是肯定的。下面我們就共同**下修改按鈕樣式的方法。

修改按鈕樣式的實質其實就是用位圖資源替代普通的按鈕。所以,在此之前要預先製作好要使用的點陣圖按鈕。我製作了四個按鈕,如果有網友想要的話,可在文末留下郵箱位址。按鈕的效果如最後的示例程式所示。

1、新增我們製作好的點陣圖資源。256色、24位等均可。

2、為「確定」按鈕和「取消」按鈕分別新增控制項變數(型別為

cbitmapbutton

):cbitmapbutton m_button_ok;

cbitmapbutton m_button_cancel;3、

設定按鈕的屬性->styles->owner draw為true。一定不要忘記,否則按鈕樣式不會改變。4、在

oninitdialog()

函式中新增**:

((cbitmapbutton *)getdlgitem(idok))->loadbitmaps(idb_ok1,idb_ok2,idb_ok1,idb_ok1);

((cbitmapbutton *)getdlgitem(idok))->invalidate(true);

((cbitmapbutton *)getdlgitem(idok))->sizetocontent();

((cbitmapbutton *)getdlgitem(idcancel))->loadbitmaps(idb_cancel1,idb_cancel2,idb_cancel1,idb_cancel1);

((cbitmapbutton *)getdlgitem(idcancel))->invalidate(true);

((cbitmapbutton *)getdlgitem(idcancel))->sizetocontent();

其中,loadbitmaps的第乙個引數表示

按鈕可用時按鈕的樣式;第二個引數表示按鈕可用時按下按鈕時的樣式;第三個引數表示按鈕不可用時按鈕的樣式;第四個引數表示按鈕不可用時按下按鈕時的樣式。

示例程式效果圖如下:

修改video標籤自帶按鈕的預設樣式

我們來看一下 video 的內部構造 chrome 下,開發者工具 setting preferences elements 勾選 show user agent shadow dom 再回來看,已經可以看到 video 的內部結構了 瞄一眼,有沒有看到很熟悉的 webkit media contr...

如何修改移動裝置按鈕預設樣式

在為移動裝置製作網頁的過程中,你可能會遇到下述奇怪的現象 當你為乙個按鈕設定樣式,並在瀏覽器開啟模擬器檢視效果時,一切都很美好。但當你使用真機測試時,你的按鈕卻變成了下面這個樣子 而且即使你使用終極禁術border radius 0 important也還是沒用。這是因為在移動裝置中,各瀏覽器為一些...

如何修改移動裝置按鈕預設樣式

在為移動裝置製作網頁的過程中,你可能會遇到下述奇怪的現象 當你為乙個按鈕設定樣式,並在瀏覽器開啟模擬器檢視效果時,一切都很美好。但當你使用真機測試時,你的按鈕卻變成了下面這個樣子 而且即使你使用終極禁術border radius 0 important也還是沒用。這是因為在移動裝置中,各瀏覽器為一些...