DOBON.NET DOBON.NETプログラミング掲示板過去ログ

最小化,最大化されたフォームを元に戻すには

環境/言語:[Windows XP .NET C]
分類:[.NET]

はじめまして。
単純なことを調べています。

最小化(最大化)されたフォームを,プログラムから元に戻したいのですが,
方法が見つかりません。

”フォームを最小化あるいは最大化する
フォームの現在の状態(最大化、最小化)を調べる ”http://dobon.net/vb/dotnet/form/windowsstate.html
に最大化,最小化の方法はありますが,元に戻す方法がありません。
下記のように,単にWindowStateにNormalをセットした場合,最小化された
アイコンがデスクトップに現れるだけでした。
何方かお教え下さい。

[C#]
//自分自身のフォームの状態を調べる
switch (this.WindowState)
{
case FormWindowState.Normal:
break;
case FormWindowState.Minimized:
//元のサイズで表示したい
    this.WindowState = FormWindowState.Normal;
//フォームを表示する
this.Show();
break;
case FormWindowState.Maximized:
break;
}
■No6484に返信(藤木さんの記事)
> はじめまして。
> 単純なことを調べています。
> 最小化(最大化)されたフォームを,プログラムから元に戻したいのですが,
> 方法が見つかりません。

「最小化・最大化」と「サイズの変更」を混同していませんか?

> //元のサイズで表示したい

のであれば、起動時にどこかへForm (this) のSizeを確保。
サイズを本に戻したい時に、

  this.WindowState = FormWindowState.Normal;
  this.Size = [退避しておいたSize];

とすれば良いのでは?

# ちなみに、this.Size = this.DefaultSize; はダメですよ。:-)

DOBON.NET | プログラミング道 | プログラミング掲示板