0

フォームの境界線を削除する方法は知っていますが、単にキャプションを削除したいだけです。P/Invokes のグーグル検索ではあまり結果が得られなかったので、どうすればそのような結果を達成できるのでしょうか?

代替テキスト

4

2 に答える 2

2

管理されていない開発から来て、私は P/Invoke {Get/Set}WindowLong などを呼び出します。これが私の最初の応答でした。しかし、これに対処するための管理された方法があります。

次のように、フォームの CreateParams プロパティをオーバーライドして、ボーダー スタイルを削除し、太いフレーム スタイルを追加する必要があります。

...
const UInt32 WS_THICKFRAME = 0x40000;
const UInt32 WS_BORDER = 0x800000;
...

protected override CreateParams CreateParams
{
  get
  {
    CreateParams p = base.CreateParams;
    p.Style |= WS_THICKFRAME;
    p.Style &= ~WS_BORDER;

    return p;
  }
}



推奨読書リスト

ウィンドウ スタイル http://msdn.microsoft.com/en-us/library/ms632600%28VS.85%29.aspx

Form::CreateParams プロパティ http://msdn.microsoft.com/en-us/library/system.windows.forms.form.createparams.aspx

于 2010-08-26T22:50:49.667 に答える
-1

現在VSを持っていないので、正確な答えを出すことはできません。申し訳ありません。

ウィンドウのプロパティペインで境界線のスタイルを探します。そのうちの1つで、同様の1つを設定できます:)

編集:何かが足りないことはわかっていました...まず、プロパティ「ControlBox」、「MaximizeBox」、「MinimizeBox」を探してfalseに設定し、「FormBorderStyle」プロパティでサイズ変更可能なオプションの1つを選択します-はい、できません写真のように見え、固定サイズでもあります。少なくともPinVokeAFAIK-がない場合はそうではありません。

また、「Text」プロパティを空白のままにすることを忘れないでください。

お役に立てれば :)

于 2010-08-12T03:21:01.977 に答える