
環境はVisualStudio .NET2003です。
VC++ MFCにて、動画の一覧をリストで表示するようなものを作りたいと
考えています。
リスト上部に「ファイル名」「ファイルサイズ」「再生回数」などの
項目名が横方向に並び、その下の各行(表示されるデータ)には、
左端にサムネイル、続いて実際のファイル名、ファイルサイズ、
再生回数などが表示される、といった具合です。
CListCtrlを使うことで、ファイル名などの各項目、サムネイルの
表示などはできるようなのですが、各行にそれぞれ「ボタン」を
設置することはできないでしょうか?
「再生」「削除」などのボタンを設置し、各行のデータに対する
映像再生、ファイル削除の処理を割り当てたいと考えています。
「各行にわざわざ設置しなくても、リストとは別にボタンを用意し、
リスト内の各行を選択してからボタンを押すようにすればよい」という
考え方もあるかと思いますが、できるだけ操作のステップ数を
減らそうと思い、このような仕様を考えました。
もしCListCtrlで各行にボタンを設置する方法をご存知の方が
いらっしゃいましたら、具体的な方法または参考ページを
教えていただけないでしょうか。
よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
昔VC6で上記に似た事をしましたが、かなり無理矢理なので、
tamtam_sepさんがイメージ的に違うものと思うますが、一応書いて置きます。
流れ
(1)CListCtrl にボタンのイメージを配置する。
(2)HitTest使ってユーザがクリックした座標をチェック
(3)座標が丁度ボタンイメージ位置に重なっていたら、
ボタン押下イメージにボタン画像をすり替えて、
押下内部処理を行う。
大体、こんな感じ、、。面倒でした。(==;
画像を使って擬似的にボタンを表現する、というやり方ですね。
「リストがスクロールできる」「列幅をユーザーが変更できる」
という点を考慮する必要があるので、ボタンの座標を把握するための
処理はかなりややこしくなりそうですね。
ご回答ありがとうございました。参考にさせていただきます。
引き続き、情報を募集します。よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
リストコントロールのデータの変更を検知したい
C言語・C++・C#
-
エディットボックスのフォントを変えたい
C言語・C++・C#
-
-
4
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
5
MFC ダイアログ上のID取得について
C言語・C++・C#
-
6
リストコントロールの列幅を固定にする
C言語・C++・C#
-
7
ボタンのオーナードローについて
C言語・C++・C#
-
8
CListCtrlで行の高さを指定したい。
C言語・C++・C#
-
9
ダイアログのボタンコントロールで困っています
C言語・C++・C#
-
10
MFCでのタブコントロールについて
C言語・C++・C#
-
11
テキストボックスからフォーカス外す
C言語・C++・C#
-
12
ツールチップ
C言語・C++・C#
-
13
ボタンの表示の色、フォントを変更したい
C言語・C++・C#
-
14
リストコントロール(MFC or API)の最後尾にアイテムを追加するには?
C言語・C++・C#
-
15
複数列リストコントロールについて
C言語・C++・C#
-
16
リストビューの選択状態を取得するメッセージはありますか?
C言語・C++・C#
-
17
MFCでコンボボックスを選択不可状態にしたい
C言語・C++・C#
-
18
CStringをwchar_tに変換したい
C言語・C++・C#
-
19
MFC ポップアップメニューのチェック表示について
C言語・C++・C#
-
20
仮想リストコントロールの表示
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c# 文字列の最後から1文字削除...
-
DataGridViewのチェックボック...
-
グリッドビューでのチェックボ...
-
Fancyboxのiframe内に閉じるボタン
-
メッセージボックスのボタンの...
-
VBAで一時中断したプログラムの...
-
JSPでメッセージボックスを表示...
-
メール添付されたPDFファイルが...
-
JSFで最初のリクエストで動く処...
-
CheckBoxをボタン形式にして押...
-
コンピュータへの接続数が最大...
-
コネクション・セッション・ト...
-
getParameterで値が取得できず...
-
【ASP2.0】TextBoxのフォーカス...
-
ACCESS2010 WEBブラウザーコン...
-
Q&Aフォームを作成したいのです...
-
サーバOSとクライアントOSの判...
-
SuspendLayoutが効かない?
-
<FORM> </FORM> の中に さらに...
-
ブラウザの×(閉じる)ボタンの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAで一時中断したプログラムの...
-
DataGridViewのチェックボック...
-
c# 文字列の最後から1文字削除...
-
Eclipseでクリーンが出来ない
-
Fancyboxのiframe内に閉じるボタン
-
SPREADでカーソルの位置を1行目...
-
JSPでボタンを押したら、文字が...
-
JSPでメッセージボックスを表示...
-
グリッドビューでのチェックボ...
-
C# Enterキーの動作について
-
Visual C#でストップウォッチ機...
-
ひとつの検索窓で複数の検索サ...
-
EXCEL2010でセルが編集中かを判...
-
VBのこのコードの意味を教えて...
-
Page_Load時にボタンクリックイ...
-
初期状態に戻す方法
-
今更、VBAでRPA、キーボード操...
-
VC++ MFC CListCtrlで、ボタン...
-
javascript 別ウィンドウを開...
-
GridViewの項目編集(初歩)
おすすめ情報