• 締切済み

MFCでのプログラミングで…

質問よろしくお願いします。 エクセルの色選択コンボボックスのようなものをMFC等で作るには、どうすればよいでしょうか。

みんなの回答

  • titokani
  • ベストアンサー率19% (341/1726)
回答No.5

#1,3,4です。補足 ツールバーでも、もしかしたらいけるかもしれません。

shinka_ron
質問者

お礼

ありがとうございます。 ちょっと手段は異なりますが、違う方法で強引に再現しました。 色々ありがとうございました。

  • titokani
  • ベストアンサー率19% (341/1726)
回答No.4

#1,#3です。修正 ×CDontrolBar ○CControlBar

shinka_ron
質問者

お礼

ありがとうございます。 ちょっと手段は異なりますが、違う方法で強引に再現しました。 色々ありがとうございました。

  • titokani
  • ベストアンサー率19% (341/1726)
回答No.3

#1です。 それでしたら、自分で一から作るしかないと思います。 CDialogベースでもCWndベースでもどちらでもお好きなほうで。 CDontrolBarをベースにすると、ドッキングバーが作れます。 CMiniFrameWndをベースにすると、親ウィンドウとアクティブ状態を同期させるウィンドウが作れます。

回答No.2

カラーダイアログを呼び出す、というのは、答えになっていませんか。 CColorDialog myDLG(myColor); if (myDLG.DoModal() == IDOK) {myColor = myDLG.GetColor();} とか、そんなのでいけると思うのですが。

shinka_ron
質問者

補足

回答ありがとうございます。 カラーダイアログでは、その他の拡張や縮小が難しい コモンダイアログのため、希望がかなえられないのです。 ・使える色のサンプルが並んでいる ・他のダイアログを出現させるリンクをつけたい ・枠が要らない 一番近しいのがエクセルの線やフォントカラーを変更したいときに出現する一覧なのですが。

  • titokani
  • ベストアンサー率19% (341/1726)
回答No.1

オーナードローかな

shinka_ron
質問者

補足

回答ありがとうございます。 すいません。言葉が少なくて上手く伝わるわけないですよね。 今回作りたいと思ったのは、 色選択コンボボックスの色サンプルパレット(カラーリスト?)の部分なんです。あの、コンボボックスをクリックすると出現する、20色ぐらいのサンプルなどが表示されているものです。 コンボボックス自体はオーナードローを用いて色描画できるようになっているのですが。 やはりフレームなしダイアログを作成して、 色ボタンを一個一個手作りするのがいいのでしょうか。 もしご存知でしたら、ご教授お願いします。

関連するQ&A

  • MFCでのコンボボックスについて

    ご教授願いたくよろしくお願いします。 初歩的な質問ですみません。 何度やっても表示されません。 開発環境 OS:WindowsXP PP:VC++ 6.0 MFC 使用 質問 コンボボックスの初期値として、"F3"という文字を コンボボックスのテキストに表示させたいのです。 コンボボックスのリストから選択した項目の文字列を表示させたいのですが、できません。 コンボボックスのプロパティとしては、 タイプ:ドロップダウン オーナー描画:いいえ 初期描画で使用しているロジックとしては、 CString sss; m_cmb1.GetLBText(0, sss); m_cmb1.SetWindowText(sss); UpdateData(FALSE); ※m_cmb1は、CComboBox の変数です。 参考になるURLやロジックをお願いします!

  • MFCでコンボボックスを選択不可状態にしたい

    ダイアログ上にあるコンボボックスを選択不可状態にしたいのですが、 良い方法が見つかりません。 どなたか良い方法ご存知でしたら、ご教授お願い致します。 なお、この場合の選択不可とは、 コンボボックス上でクリックしても、 プルダウンされず、何も反応しないことを指します。 またコンボボックスのTypeは、ドロップダウンにて作成しています。 開発環境は、VC++2005です。 また、当方MFC経験2ヶ月程度の初心者ですので、 なるべく分かりやすい解説いただけると幸いです。 お手数ですが、御回答お願いいたします。

  • Excel VBA

    Excelのコンボボックスについての質問です。 sheet(1)のA2~A20までコンボボックスに入る選択肢が入っています。 フォーム1のコンボボックス1にその選択肢を入れたいのですが、なるべく短いコードを教えていただきたいのですが…。 ちなみに私の知っているコードは コンボボックス1.Additem Range("シート1!A2") コンボボックス1.Additem Range("シート1!A3")      ・      ・      ・ という感じです。 どうかよろしくお願いいたします。

  • MFCでグリッド

    MFCでグリッド 現在、MFCでGUIプログラムを行っています。 MFCではデフォルトでグリッドコントロールがありません。 そこで質問なのですが、以下の条件を満たすようなグリッドコントロールをMFCで実装する 場合、皆さんはどうしていますか? ・セルの入力をコンボボックスにしたり、入力制限を設けたりしたい。(SpreadSheetのように) ・ActiveXコントロールは使いたくない(配布時、レジストリをいじりたくない) やはり、リストなどの基本的なクラスを派生させて自分でコツコツ作るしかないですか? 詳しい方がいましたら教えて下さい。 環境:WindowsXP SP3 言語:VC++6.0 MFC

  • ドロップダウン エディット コンボボックスの使い方

    Excel for Mac 2011の開発にて 「ドロップダウン エディット コンボボックス」 を使用したいのですが、表示が灰色で選択できません。 「コンボボックス」 も試してみたのですが、入力方法がドラッグのみの対応だったので、 ドロップダウン形式のコンボボックスを使用したいと考えているのですが、 この機能を利用するにはどうすれば良いのでしょうか? 可能であればVBA上での関数名なども併せてご教示願えますと幸いです。 (通常のコンボボックスと同様に「ComboBox1」で良いのでしょうか?)

  • MFCでバー類のカスタマイズ

    現在、MFCでドローツールを作成しています。 今回、ステータスバーやツールバーをカスタマイズして バー上にスライダーやコンボ、エディットボックスを乗せたいと考えています。 このようにMFCで複合的な部品を作る場合、 どのようにアプローチすればよいのしょうか? 詳しい方がいたら、手がかりとなるキーワードだけでも教えて頂けると助かります。 どうぞ宜しくお願い致します。

  • VBAのデータ抽出について

     列  A   B   C 行1 番号  色   形  2  1   白   丸  3  2   赤   三角  4  1   赤   丸  5  3   黄   四角 (1)Excel Sheet1にコマンドボタン1があり、それをクリックするとUserForm1が表示されます。 (2)UserForm1には「番号」「色」「形」の各コンボボックス1,2,3が配置されています。 (3)各コンボボックス1,2,3に表示されるのは、Sheet1の各列のデータです。 (4)コンボボックス1,2,3のうち1つ選択→その条件に合うデータを抽出。  コンボボックス1,2,3のうち2つ選択→その2つの条件に合うデータを抽出。  コンボボックス1,2,3のうち3つ選択→その3つの条件にあるデータを抽出。 (5)Sheet1のコマンドボタン2をクリックすると、Sheet1は元のデータ一覧に戻る。 というようなプログラムを組みたいと思っています。 (4)のデータ抽出、(5)の戻し方がよくわかりません。 どなたかご教授下さい。

  • コンボボックスが空白になってしまう

    Excelの開発メニューにある、フォーム コントロール→コンボ ボックス (フォーム コントロール)の使い方について質問です。 1つのシートにコンボボックスを10個並べ、「いいえ」「はい」の2択のみで、10問の質問表のようなものを作っています。 初期状態で全ての項目で「いいえ」を表示させておき、回答者にはそのうち当てはまるものだけを「はい」に選択し直して欲しいのですが、初期状態で全てのコンボボックスを「いいえ」にしておく方法がわかりません。 全て「いいえ」にした上でそのExcelファイルを保存しましたが、再度開いた際に、なぜか全てのコンボボックスが空白になってしまいます。▼を押すとまたきちんと選択はできるのですが。 コンボボックス 初期値 と検索すると解決方法らしきものがヒットするのですが、コードを入力するといった内容で全く理解できませんでした。 お恥ずかしながらコードのことは全く分からないので、もう少し簡単に解決方法はありませんでしょうか。

  • エクセルで2段階コンボボックスを作成

    エクセルのシート上にコンボボックスを2つ作成して Aのコンボボックスの内容を選択するとBのコンボボックスの値が変わるというものを作成したいです。 エクセルのプルダウンで最初は考えていましたが、プルダウンだと三角の矢印が常に表示されない為あきらめました。 なのでコンボボックスの作成の仕方を教えて下さい。 例として野菜とくだものをあげます コンボボックスAで選択するもの→ 野菜、くだもの コンボボックスBで選択するもの→  【野菜の場合】キャベツ、にんじん、トマト 【くだものの場合」バナナ、りんご、みかん 以上です。よろしくお願いいたします。

  • コンボボックスの設定  【エクセル】

    エクセルのコンボボックスについてです。 コンボボックスのリストとして 赤 青 黄色 というリストをコンボボックスの‘入力範囲’に指定します。 コンボボックスの ‘コントロールの書式設定’→‘リンクするセル’ でセルを指定すると、赤を選んだとき リンクさせたセルには 「1」とでますが、なぜ1と出るのか、というのと 私は「赤」と表示させたいのですが、そのやり方を教えて頂きたいです。 コンボボックスを初めて使うので初心者的な質問だと思いますが宜しくお願いします。