独自のユーザーインターフェースの作成について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
アバター
shiro4ao
記事: 224
登録日時: 15年前
住所: 広島

独自のユーザーインターフェースの作成について

#1

投稿記事 by shiro4ao » 13年前

ウイルス対策ソフトに多いのですが独自のユーザーインターフェースを持っているソフトは
どうやって作っているのでしょうか。

ざっくりしした質問ですみません。
自分であれば、WS_POPUPでポップアップスタイルのウィンドウを作ってその上に、
ボタンに見える画像を描画して、マウスがそのボタンの位置に来たり、クリックされた時に
なにか機能を実行することで、まるで独自の形のボタンが有るように見せかけるという方法を取ると思います。
この方法だと極めて手間がかかる上に、保守性がとても悪いと思うのですが
他の方法はあるのでしょうか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 独自のユーザーインターフェースの作成について

#2

投稿記事 by softya(ソフト屋) » 13年前

日頃MFCな人なのでWin32APIだと少々勝手が違うかも知れませんがボタンコントールをオーナードローさせるだけで独自の形にする事はできます。それを私はMFCの独自ボタンのクラス・ライブラリにして使っています。
ボタンとの当たり判定まで細かく制御しようとすると色々手はあると思いますが今のところ四角のままでやってます。ちょっと工夫して当たり判定マップでも作れば独自な形も大丈夫だと思います。
※ オーナードローはWin32APIの機能のはずですから問題なく出来ると思うのですが。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

ISLe
記事: 2650
登録日時: 15年前
連絡を取る:

Re: 独自のユーザーインターフェースの作成について

#3

投稿記事 by ISLe » 13年前

既存のコンポーネントをサブクラス化するだけでもけっこう凝ったことできると思います。
リージョンを使って複雑な形の(当たり判定を持った)ボタンなどもわりと簡単に作れます。

.NETでWPF使うとなんでもありという感じですが。

アバター
shiro4ao
記事: 224
登録日時: 15年前
住所: 広島

Re: 独自のユーザーインターフェースの作成について

#4

投稿記事 by shiro4ao » 13年前

>softyaさん
オーナードローを調べてみました、いろんなかたちでボタンの機能をもたせられるのですね
MFCは難解そう(+なかなか高い)なので、手が出せないでいます。すごいですね。

>ISLeさん
コンポーネントのサブクラス化は難しそうですが、WPFも気になっていたので、調べてみたいと思いました。
 
ありがとうございました

閉鎖

“C言語何でも質問掲示板” へ戻る