少し角を丸くする程度なら「オブジェクト丸く」でできます。
'サンプル1
100で、母艦の、オブジェクト丸く。
//リサイズすると左上隅以外は通常の形に戻ってしまうことがあります。
'サンプル2
「gdi32.dll」の、「DWORD CreateRectRgn(int,int,int,int)」を、
「?,?から,?,?へ」の、「長方形リージョン」として、DLLを利用。
「gdi32.dll」の、「int CombineRgn(DWORD,DWORD,DWORD,int)」を、
「?へ割り当て,?と,?を結合,?の方法で」の、「リージョンコンバイン」として、DLLを利用。
「user32.dll」の、「int SetWindowRgn(DWORD,DWORD,BOOL)」を、
「?を,?の形に,?に再描画設定で」の、「ウィンドウ形成」として、DLLを利用。
0,0から、50,200へ、長方形リージョン。
長方形A=それ
50,75から、100,125へ、長方形リージョン。
長方形B=それ
長方形Aへ割り当て、長方形Aと、長方形Bを結合、2の方法で、リージョンコンバイン。
100,0から、150,200へ、長方形リージョン。
長方形C=それ
長方形Aへ割り当て、長方形Aと、長方形Cを結合、2の方法で、リージョンコンバイン。
母艦の、スタイルは、枠なし。
その、背景色は、黄色。
(母艦の、ハンドル)を、長方形Aの形に、1に再描画設定で、ウィンドウ形成。
比呂野 マサヨシ様 による解説も載せておきます。
> 「A,Bから、C,Dへ、長方形リージョン。」というのは、ひまわりのグラフィック系の命令文参考
> 「四角形」「四角形描画」と同じ様なことをしていると思ってください。
> A,Bが左上のX,Y座標。C,Dが右下のX,Y座標になります。
> リージョンの設定が成功すると「それ」にリージョンのハンドルが代入されます。
>
> 「Aへ割り当て、Bと、Cを結合、Dの方法で、リージョンコンバイン。」は、
> Aに既存のリージョンハンドルをおきます。
> BとCに結合させたいリージョンハンドルをおきます。
> Dは結合の方法を指定するもので数字によって
> BとCを合わせた形
> BからCを削った形
> BとCの重なっている部分の形
> などが指定できます。
> この命令を実行することで、AのリージョンハンドルにBとCを合わせた形が納められるというわけです。
(2003/07/23)
机上右置縦書和時計 比呂野 マサヨシ 様 (2003/08/21)
星時計 比呂野 マサヨシ 様 (2003/08/21)
作成日 2003/08/22 作成時のひまわりバージョン 1.78