• 締切済み

C言語によるダイアログ操作について

ダイアログボックスを表示するときに C言語からサイズの指定をしたいのですが 出来ません C++ではなくて(MFCを使用しない) C言語のソースから指定する方法を 教えてください。急ぎです!!

noname#3170
noname#3170

みんなの回答

  • mnabe
  • ベストアンサー率33% (427/1283)
回答No.2

なんのサイズを変更したいのでしょうか?  ダイアログサイズは、APIを使用するかぎり不可能です。 Windowsから出ているかぎり固定です。  APIを使用しないで、生Cで作るのなら可能です。  

noname#3170
質問者

お礼

ありがとうございました 参考になりました。 方針を変えます。

  • alfeim
  • ベストアンサー率58% (114/195)
回答No.1

一番手っ取り早いのは、複数のサイズの違うダイアログテンプレートを用意して DialogBoxマクロかCreateDialogマクロを呼び出すことでしょう そうでなければDialogBoxマクロやCreateDialogマクロと同じこと+サイズ設定をするプログラムを用意する必要が在ります。 デザインを考えなくてもいいならSetWindowLongAPIあたりでサイズ可変のウィンドウスタイルをセットし、SetWindowPosAPIでサイズ指定すればどうにかなるかもしれません。(間違いなくデザインはぶっ飛びますが・・・) というか、通常ダイアログボックスをサイズ可変で作ったりはしないんとおもうんですが・・・何の手も無くサイズ変更するとデザインがぐちゃぐちゃになりますよ?

noname#3170
質問者

お礼

ありがとうございました 参考になりました。 方針を変えます。

関連するQ&A

  • C言語 ダイアログボックス

    C言語で、ダイアログボックスを表示した後、そのメッセージの内容を読み上げるようなプログラムを作っています。 そのためには.wavファイルを作ってPlaySoundですればいいのではと思ったのですが、自動で再生させるためにWM_INITDIALOG内で再生処理をさせるとダイアログが影も形も見当たらない状態で音声が再生されます。そこで、Showwindow関数を呼び出せばダイアログが表示されるのかなと思ってやってみても、ウィンドウの枠は出るのですがスタティックテキストが出ません。 あくまで、ボタンをおしたら音声を流すのではなく、ダイアログが表示されてから自動で音声を流す方法はないのでしょうか、あれば回答よろしくお願いします。サンプルソースなどあればありがたいです。

  • C言語 ダイアログボックスについて

    C言語でダイアログボックスを作っています。 閉じるボタンを押しても、ウィンドウが閉じないようにするには、どうしたらいいですか? ちなみに、閉じるボタンを表示しなくするのではなく、閉じるボタンは押せるのですがおしても無反応(操作を設定していないボタンみたいな)にすることはできませんか? 閉じるときに、ウィンドウだったらWM_CLOSEが送られてきますよね、それのダイアログ版というかがあれば閉じる作業をする前にreturnしてしまえばいいのですが・・・もしあったら教えてください。 コンパイラはBccです。

  • C言語 ダイアログボックスのアイコン

    ダイアログボックスに、メッセージボックスではMB_ICONQUESTIONと指定すれば表示できたアイコンを表示したいと思うのですが、どうすればいいですか? 求めるものがはい、いいえの2通りならメッセージボックスで作ればよかったのですが分岐が複数に及ぶのでダイアログボックスにしなくてはならなくなりました。しかし、やっぱりアイコンがないと味気ないのでつけようと思ったんですが方法がわからなくて質問しました。 環境はWin7、Bccです。 回答よろしくお願いします。

  • ダイアログの表示について

    Cで(MFCを使用しない)Window画面をつくっているのですが まずCreateWindowでベースを作り チャイルドでCreateDialogをして 上に貼り付けています そのダイアログからボタンが押され またちいさなダイアログを表示したいのですが 新たなCreateDialogをしても表示されません どうしたらよいのでしょうか? C(MFCを使用しない)指定です。

    • 締切済み
    • CGI
  • ダイアログをスクロールさせるには

    MFCでウィンドウにダイアログボックスを張り付けた時に、 ダイアログボックスの表示させたい領域よりウィンドウサイズが小さい場合、 自動でスクロールバーを表示させるようにするにはどうすればいいのでしょうか? ダイアログで表示させたい領域を区切ってスクロール判断をさせるようにはできないのでしょうか?

  • c言語を使いダイアログにbmpを表示したい 

    はじめまして、 私は、c言語は初心者なのでが、ダイアログボックスに、画像(bmp)が表示することができません。 ソースは、 hdc = BeginPaint(hDlg, &ps); //指定ウィンドウ内での描写準備 // ビットマップをファイルからロードする hBitmap = ::LoadBitmap( NULL, _T("test.bmp") ); // ウィンドウのデバイスコンテキストハンドルを取得する hDC = GetDC( hDlg ); // メモリデバイスコンテキストを作成する hCompatDC = CreateCompatibleDC( hDC ); // ロードしたビットマップを選択する GetObject(hBitmap, sizeof(BITMAP), &bmp); // ビットマップをウィンドウに転送する(表示する) if(hBitmap != NULL){ StretchBlt( hDC, 0, 0, 100, 100, hCompatDC, 0, 0, bmp.bmWidth, bmp.bmHeight, SRCCOPY ); SendDlgItemMessage( hDlg, IDC_STATIC, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM)hBitmap); } なのですが、これはメインウィンドウでは動くのですが、ダイアログボックスでは動かずこまっています。 どうか、助言のほどよろしくお願いします。

  • C++とWin32APIでタブコントロールを作成するには

    C++のWin32APIで、MFCを使わずに、 ダイアログボックスの中にタブコントロールを実装したいのですが、 その方法が解らず困っています。 とりあえずウインドウにタブコントロールを 付ける事まではできたものの、 (MFCを使用しない方法で)ダイアログボックスの中に 表示させる方法が見つからないのです・・・。 VisualStudioを使用しているので、 ツールボックスの中にある「Tab Control」というものを ダイアログボックスの中に貼り付けてみましたが、 [Tab1]~[Tab5]までありますが見た目上だけのものなので、 当然実行してもそこには何もありません。 (項目も、タブを切り替える処理も追加してないので 当たり前ですよね^^;) この方法はやはりMFCを使用しないと無理なのでしょうか? もし方法がございましたら、どうかご伝授をよろしくお願いします

  • c言語でログイン処理はできますか?

    c言語は学んでいて、phpはまだ学んでいないので、c言語でやりたいのですが、 ログイン処理はできますか? また、できる場合、どんなソースになるんでしょうか? >>>>>そもそも、c言語で書いたプログラムをhtmlに載せるにはどうすればいいのですか? 急ぎです。。。。宜しくお願いします・

  • C言語のファイル操作

    すいません、C言語の初心者です。 C言語のファイル操作において、ファイルから読み込んで、読み込んだ分だけその情報を消していくというのは可能ですか?可能であればサンプルソースのあるURLもしくはソースそのものを教えて下さい。

  • C言語記述されたものをMFCに移植

    C言語(SDK)で、記述されたソースコードを C++(MFC)で記述したいのですが、 ダイアログベースでSDKだとEnableWindowなどの 処理が増えて、バグの要因となってしまい自分自身で 最後は状態が分からなくなってしまうことがあります、 それで、MFCにして処理を減らそうと思いました。 基本的にはXXXDlg.cppに書きますが、 関数だけのファイルをMFCとして書き換えたいのですが、 メンバを使うことができません。 XXXDlg.hをincludeしたのですが、駄目でした。 どのようにしたらよろしいのでしょうか?

専門家に質問してみよう