0

Windowsフォームでxボタンを無効にするための回答を得ましたが、閉じる(X)ボタンを完全に非表示/非表示にし、最大ボタンを閉じる(x)ボタン位置に移動し、最小ボタンをフォームの最大ボタン位置に移動することは可能ですか. カスタム/ユーザー コントロール/新しいフォームを作成せずに

4

3 に答える 3

0

@Andyは正しいです、それは不可能です。これらのボタンは、ウィンドウの非クライアント領域と呼ばれるものにあります。つまり、ウィンドウの一部は (多かれ少なかれ) Windows によって制御され、ウィンドウで "ホスト" されているプログラムではありません。[閉じる] ボタンを無効にすると、ウィンドウのシステム メニュー (またはコントロール ボックス メニュー) も無効になることに注意してください。

タイトル バーのすべてのボタンを非表示にして、アプリケーションを最小化および最大化する新しいボタンをアプリケーション フォームに作成することもできます。

しかし、なぜボタンを動かす必要があると感じたのですか?ボタンを移動したり、別のデザインにする必要がある場合は、Trend Micro アンチウイルスなどのアプリケーションがアプリケーション ウィンドウに画像を提供してウィンドウを「スキン」し、カスタム (a/k/a 所有者) 描画コントロールを作成することを知っています。 . また、非クライアント領域を「スキン」し、タイトル バーのテキストを表示する方法/場所、最小化/最大化ボタンなどを効果的に設計します。 )。さらに、人々は標準の Windows フォームに単純に慣れているため、それが「標準」である理由です。

もう 1 つ考慮すべきことは、WPF の使用です。基本的に Window テンプレートを再定義して、最小化ボタンや最大化ボタンなど、一般にクライアント領域以外のボタンのルック アンド フィール (および位置) を変更できます。

于 2013-05-31T12:39:56.033 に答える
0

あなたはオーナードローをしなければなりません。

  • FormBorderStyle を none に設定してすべてのステータス バーを非表示にする
  • Dock Top を使用してフォームの上部にパネルを配置する
  • 必要なボタンを作成します (最小化、最大化)
  • フォームをグラブするパネル タイトル バーを作成する フチなしフォームを移動可能にする
于 2013-05-31T12:41:25.630 に答える