為了實現圓角的對話方塊視窗,這裡主要用兩個函式,
createroundrectrgn,和setwindowrgn
程式先通過getwindowrgn函式得到視窗矩形,然後通過createroundrectrgn函式建立乙個圓角矩形,最後通過setwindowrgn函式改變視窗的形狀。
具體操作如下:
1 開啟「class view」,右擊「cmydlg」,出現乙個選單,選擇「addwindow message handler..」
2 之後在「new windows messages\events」中雙擊「onsize」,「ok」
void cmydlg::onsize(uint ntype, int cx, int cy)
cdialog::onsize(ntype, cx, cy);
// todo: add your message handler code here
crgn m_rgn;
crect rc;
getwindowrect(&rc);
rc-=rc.topleft();
m_rgn.createroundrectrgn(rc.left,rc.top,rc.right,rc.bottom,100,100);
setwindowrgn(m_rgn,true);
其他視窗的操作基本上相同,都按照這個操作
執行結果如下:
VC實現對話方塊視窗任意分割
最近寫mfc的程式,想在對話方塊裡實現視窗的任意分割。現在網路資料一大抄,找個東西實在麻煩。總算這個很簡單,很快就搞定了,寫下來做個筆記。個人認為簡單問題最好就是直接貼源 一看就明白,說來說去反而弄不清楚,那我就少廢話了,自己看吧,注釋很清楚。先來張 1.新建乙個mfc對話方塊程式mysplitte...
VC實現對話方塊視窗任意分割
最近寫mfc的程式,想在對話方塊裡實現視窗的任意分割。現在網路資料一大抄,找個東西實在麻煩。總算這個很簡單,很快就搞定了,寫下來做個筆記。個人認為簡單問題最好就是直接貼源 一看就明白,說來說去反而弄不清楚,那我就少廢話了,自己看吧,注釋很清楚。先來張 1.新建乙個mfc對話方塊程式mysplitte...
swift畫圓角對話方塊
這裡的圓角的對話方塊 我指的是類似安卓的.9.png那樣的圓角的對話方塊,就是這個樣子的。分解出來就是乙個實心的圓角矩形加乙個三角形,外面用直線描邊,裡面寫一些居中懸浮的字串而已。1.畫圓角矩形 假設x1,y1為右下角的點 let rx cgfloat 4 圓角弧度 cgcontextsetfill...