ダイアログボックスの表示位置 – プログラミング – Home

ダイアログボックスの表示位置
 
通知
すべてクリア

[解決済] ダイアログボックスの表示位置


まる
 まる
(@まる)
ゲスト
結合: 23年前
投稿: 45
Topic starter  

お世話になっております。
まると申します。
VC++6.0、SDK、Win2000で開発中です。

現在、WinMainからDialogBox関数でダイアログを表示させているのですが、
必ず画面の左上に表示されてしまいます。
これを、画面中央に表示させたいのですがどのようにすればよいのでしょうか?
引数でそれを実現できるものは無いようですが。。。
WM_INITDIALOG内でダイアログを移動させるという方法しか思いつきません。

ダイアログを中央に表示させる方法をお教えください。
よろしくお願い致します。


引用未解決
トピックタグ
sugar
 sugar
(@sugar)
ゲスト
結合: 24年前
投稿: 448
 

WM_INITDIALOGで処理できればいいような気もしますが...
ダイアログのプロパティに「中央」っていうのがありますが、
これは通用しないのかナ...?


返信引用
ぴろり
 ぴろり
(@ぴろり)
ゲスト
結合: 23年前
投稿: 4
 

SetWindowPos()関数でいけますよん♪
楽ちんなので使用方法・詳細などはMSDNで。


返信引用
まる
 まる
(@まる)
ゲスト
結合: 23年前
投稿: 45
Topic starter  

>sugarさん
ありがとうございます!
使用経験不足で、「中央」という物をしりませんでした。。。。
これで十分です!
ありがとうございました。

>ぴろりさん
SetWindowPos調べて見ました。
この関数でいけますね!!
今回はダイアログなので、リソースエディタで中央を使いますが、
SDIなどで使えますね!

ご教授ありがとうございました!


返信引用
sugar
 sugar
(@sugar)
ゲスト
結合: 24年前
投稿: 448
 

解決されたようですが、あえて補足です。

ダイアログプロパティの「中央」にチェックを入れると、
ダイアログのスタイルに DS_CENTER が追加されるようです。
問題解決の本質としては、DS_CENTERを含ませればよい、ということですね。


返信引用
まる
 まる
(@まる)
ゲスト
結合: 23年前
投稿: 45
Topic starter  

>sugarさん
さらにご教授いただきありがとうございます!
DS_CENTERですか?
DialogBoxの関数にスタイル指定の引数が無かったのでわからなかったのですが、
そのスタイルの指定方法も調べてみたいと思います。
ありがとうございました!


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました