ウイルス対策ソフトに多いのですが独自のユーザーインターフェースを持っているソフトは
どうやって作っているのでしょうか。
ざっくりしした質問ですみません。
自分であれば、WS_POPUPでポップアップスタイルのウィンドウを作ってその上に、
ボタンに見える画像を描画して、マウスがそのボタンの位置に来たり、クリックされた時に
なにか機能を実行することで、まるで独自の形のボタンが有るように見せかけるという方法を取ると思います。
この方法だと極めて手間がかかる上に、保守性がとても悪いと思うのですが
他の方法はあるのでしょうか?
独自のユーザーインターフェースの作成について
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: 独自のユーザーインターフェースの作成について
日頃MFCな人なのでWin32APIだと少々勝手が違うかも知れませんがボタンコントールをオーナードローさせるだけで独自の形にする事はできます。それを私はMFCの独自ボタンのクラス・ライブラリにして使っています。
ボタンとの当たり判定まで細かく制御しようとすると色々手はあると思いますが今のところ四角のままでやってます。ちょっと工夫して当たり判定マップでも作れば独自な形も大丈夫だと思います。
※ オーナードローはWin32APIの機能のはずですから問題なく出来ると思うのですが。
ボタンとの当たり判定まで細かく制御しようとすると色々手はあると思いますが今のところ四角のままでやってます。ちょっと工夫して当たり判定マップでも作れば独自な形も大丈夫だと思います。
※ オーナードローはWin32APIの機能のはずですから問題なく出来ると思うのですが。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 独自のユーザーインターフェースの作成について
既存のコンポーネントをサブクラス化するだけでもけっこう凝ったことできると思います。
リージョンを使って複雑な形の(当たり判定を持った)ボタンなどもわりと簡単に作れます。
.NETでWPF使うとなんでもありという感じですが。
リージョンを使って複雑な形の(当たり判定を持った)ボタンなどもわりと簡単に作れます。
.NETでWPF使うとなんでもありという感じですが。
Re: 独自のユーザーインターフェースの作成について
>softyaさん
オーナードローを調べてみました、いろんなかたちでボタンの機能をもたせられるのですね
MFCは難解そう(+なかなか高い)なので、手が出せないでいます。すごいですね。
>ISLeさん
コンポーネントのサブクラス化は難しそうですが、WPFも気になっていたので、調べてみたいと思いました。
ありがとうございました
オーナードローを調べてみました、いろんなかたちでボタンの機能をもたせられるのですね
MFCは難解そう(+なかなか高い)なので、手が出せないでいます。すごいですね。
>ISLeさん
コンポーネントのサブクラス化は難しそうですが、WPFも気になっていたので、調べてみたいと思いました。
ありがとうございました