No.4ベストアンサー
- 回答日時:
#1です。
> #3 のご回答と整合しないようですが、より具体的な説明をご教示いただけないでしょうか。
参考URLなどをどうぞ。
なお、仮に実現手段があったとしても、仕様に無理があることに変わりはありません。#3のかたのご意見には私も同意します。提示しているのは歪な仕様のしわ寄せを受けた場合の技術的なお話に過ぎません。
>>私ならボタン兼ランプのように見える絵を描きます。
>ご指摘の方法で、実現可能なのでしょうか?
これも可能です。
別にボタンでなくてもウィンドウへの自力描画は可能ですしマウスのクリックも座標も判断できますし。
特に、
> 現状は、ランプを模擬した1089ヶの表示のみで、ボタン機能がありません。
既にこの機能があって、ボタン位置がクリックできればよいだけ(押し下げとかの見た目を気にしない)ならもっと簡単。
クリックを検知してその位置の処理を呼び出せばいいだけの話です。
> 実現性は不明ですが、1つのコントロールに複数のボタン機能を割り当てることは可能でしょうか?
結局、オーナドロー/カスタムドローなどが必要になるので、ここまでしてコントロールにこだわる意味がありません。
ウィンドウに直接ボタンっぽい絵を描画するのと大差ない。
#2のかたが書かれているのは、そういうことです。
参考URL:http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng. …
No.5
- 回答日時:
No.2の者です。
何しろ数が多いので
コントロールにすることにこだわらずに
大きな1枚絵の中を33*33分割して
GDI系のAPIで絵を描くことで状態表示ランプは実現できますよね。
また、ボタンコントロールでなくとも
マウスカーソルのイベントと
カーソルの座標を拾うことで
あたかもそこにボタンがあるかのような絵を描いてあげれば
コントロールは1つだけで済むかと。
フォームのクライアント領域に直接描画すれば
コントロールすら不要。
速度重視ならDirectXを使ってはどうでしょう?
私も以前同じように制御系アプリを作っていて
監視画面を作ったことがあるのですが
その時は同じ手法をとりました。
コントロールを配置した方が
イベント処理が楽ですし
ボタン押下などの見た目の作りこみも不要で楽なのですが
数に対応するためには
こちらのアプローチの方も一つの解かと。
参考までに。
No.3
- 回答日時:
>実際には約1100ヶ配置したいのですが
仕様に無理があります。
>ボタン 兼 状態表示ランプ
のところから考え直すべきだと思います。
詳細が分からないのでこれくらいしかいえないのですが。
この回答への補足
ご回答ありがとうございます。
#1と#2の補足もご覧になって下さい。
VC6の制約を無視すると、アプリ仕様そのものは
やむを得ない状況です。
実現性は不明ですが、1つのコントロールに複数のボタン機能を割り当てることは可能でしょうか? 例えば、本来は1行分で33ヶのコントロールを割り当てるところを、16ヶ分のボタン機能を持たせた1つのコントロールと、17ヶ分のボタン機能を持たせた1つのコントロールで賄います。こんなことができれば、33×2=66ヶのコントロールで済むかと。。。
よりよいアドバイスをお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) EXCELでバーコードを作成すると白くなってコードが見えません 1 2022/04/04 14:24
- その他(IT・Webサービス) Yahooの地図の文字サイズ、googleの地図の画面分割 1 2022/05/21 12:31
- AJAX 自作の地図をグーグルマップのようにしたい 3 2022/11/15 11:53
- 防犯カメラ・監視カメラ・小型カメラ VHSを高画質な動画ファイルにしたいです。 3 2022/05/06 12:08
- Windows 10 タスクバー上に表示されたアドレス・ボックス? 1 2023/04/30 17:37
- Excel(エクセル) エクセルについて教えてください。 2 2023/06/14 11:11
- 英語 「this is the/my first time~」の文法上の制約について 1 2023/04/06 09:48
- その他(パソコン・周辺機器) RBG信号の2分岐についての質問です 3 2022/06/23 19:42
- Excel(エクセル) EXCELで次の数式を教えてください。 5 2022/11/23 18:33
- au(KDDI) 特定の画面を見るとスマホが固まります ご覧頂き有難うございます。 特定のページを見るとスマホが固まり 1 2023/08/21 19:29
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コントロールの書式設定で、“コ...
-
DateTimePickerでに年月までし...
-
エクセルのコントロールツール...
-
WM_SIZEを発生させる方法
-
ActiveXコントロールを.NETにイ...
-
C++6.0でのresource.hについて
-
VB6.0のデザイン時 コントロー...
-
タイトルバーと同機能のスタテ...
-
WindowsMediaPlayer全画面表示...
-
複数列リストコントロールについて
-
リストボックスの同期
-
リストコントロールにセットす...
-
フォームでPDFを表示させた...
-
連続で印刷すると画像が更新さ...
-
エクセル - リストボックスのマ...
-
TabControlとToolBarの背景色変更
-
警告表示を非表示にしたい
-
Accessのタブコントロールを2...
-
VB6でタブコントロールが見つか...
-
EXCELVBA リストボックスで選択...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コントロールの書式設定で、“コ...
-
エクセルのコントロールツール...
-
フォームでPDFを表示させた...
-
スピンボタンを右クリックして...
-
DateTimePickerでに年月までし...
-
C++6.0でのresource.hについて
-
連続で印刷すると画像が更新さ...
-
ActiveXコントロールを.NETにイ...
-
警告表示を非表示にしたい
-
エクセル - リストボックスのマ...
-
コモンダイアログコントロール...
-
EXCELVBA リストボックスで選択...
-
TabControlとToolBarの背景色変更
-
ワードのドロップダウンリスト
-
文字色を変えたい(ACCESS VBA)
-
CEdit の内容が変わった時にメ...
-
リストボックスの同期
-
VB6.0のデザイン時 コントロー...
-
WM_SIZEを発生させる方法
-
VBAでリストボックス内で↑↓の操...
おすすめ情報