CFormViewの境界線を細線に AND 最大化最小化閉じるボタンは非表示にしたい – プログラミング – Home

CFormViewの境界線を細線に A...
 
通知
すべてクリア

[解決済] CFormViewの境界線を細線に AND 最大化最小化閉じるボタンは非表示にしたい


秀水
 秀水
(@秀水)
ゲスト
結合: 24年前
投稿: 3
Topic starter  

こんばんわ。秀水といいます。
環境はWin98,VC++6.0,MFC です。

CFormViewで境界線をダイアログのように細線(くぼんでない線)にして
かつ、最大化、最小化、閉じるボタンを非表示にしたいのですが
上手く出来ません。(;_;)

CFormViewのOnInitialUpdateで
GetParentFrame()->ModifyStyle( WS_OVERLAPPEDWINDOW, WS_CAPTION);
とすると最大化、最小化、閉じるボタンは非表示になるのですが
境界線がくぼんでしまいます。

ModifyStyleEx(WS_EX_OVERLAPPEDWINDOW, 0, SWP_DRAWFRAME);
とすると境界線はダイアログのようになるのですが
最大化、最小化、閉じるボタンは有効になってしまいます。

このCFormViewはダイアログのように使用したいと思っています。
最初はモードレスダイアログで作成していたのですが
モードレスダイアログだとメインフレーム内ではなくなるため
ならばCFormViewを使用しようと思い作成したのですが・・・。

モードレスダイアログでビューのようにメインフレーム内にいるような動作
(メインフレーム最小化ウインドウに残らなかったり等の動作)になる方法
またはフォームビューで見た目がダイアログのようになる方法の
助言をいただけないでしょうか?
よろしくお願いいたします。


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

秀水です。
自己解決しました。

ChildFrameのPreCreateWindowに
  cs.style = WS_OVERLAPPED|WS_CAPTION|FWS_ADDTOTITLE;
  cs.dwExStyle &= ~WS_EX_CLIENTEDGE;

FormViewのPreCreateWindowに
  cs.style &= ~WS_BORDER;

を追加することでやりたいことが実現できました♪


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

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