デスクトップを表示するには?

解決


たき  2003-04-04 22:55:12  No: 77572

フォーム上に貼り付けられたボタンを押すと、
デスクトップ画面を表示するようにしたいのですが、
どういう記述をすればいいのか分かりません。
どなたかご教授願えませんでしょうか。

動作としては、クイック起動の『デスクトップの表示』を
クリックした場合と同じ動作を起こさせたいのですが。


魔界の仮面弁士  2003-04-04 23:29:38  No: 77573

これで如何でしょうか。

デスクトップの表示
   CreateObject("Shell.Application").ToggleDesktop
すべて最小化
   CreateObject("Shell.Application").MinimizeAll
元に戻す
   CreateObject("Shell.Application").UndoMinimizeAll


たき  2003-04-05 00:27:35  No: 77574

早いレスどうもありがとうございます。
おかげで上手く出来ました。
たった1行ですむなんて。

もう一つ質問があるのですが、
CreateObject("Shell.Application").ToggleDesktop
CreateObject("Shell.Application").MinimizeAll
の違いはあるのでしょうか?

MinimizeAllのほうはどんな処理をしているのか想像できるのですが、
ToggleDesktopのほうがどのような処理をしているのかが分かりません。
内部的にはどちらも同じ処理をしているのでしょうか?

両方とも同じようにデスクトップが表示されるのですが。
もしお分かりになるのでしたら、教えていただけないでしょうか?
よろしくお願いします。


とろ  2003-04-05 01:19:34  No: 77575

すべて最小化の場合、
最小化ボタンのないウィンドウは
そのまま画面に表示されてしまいます。

それに対し、デスクトップを表示の場合、
最小化ボタンのないウィンドウは
非表示にし、画面上になにもウィンドウが
ない状態になります。

最小化ボタンのないウィンドウっていうのは、
VB フォームでいうところの
BorderStyle = 1 '固定(実線) のウィンドウです。
それなので、このウィンドウを表示させてある状態で、
上の2つを実行してみれば、違いが分かります。


魔界の仮面弁士  2003-04-05 02:11:23  No: 77576

> 最小化ボタンのないウィンドウっていうのは、
> VB フォームでいうところの
> BorderStyle = 1 '固定(実線) のウィンドウです。
正しくは、「MinButton = False」のフォームです。
BorderStyle = 1 かどうかは関係ありません。(^^;)

>> MinimizeAllのほうはどんな処理をしているのか想像できるのですが、
>> ToggleDesktopのほうがどのような処理をしているのかが分かりません。

メモ帳などで、「ファイルを開く」ダイアログなどを表示している時に
実行してみると、その違いがわかるかと思います。
なお、キーボード操作でいえば、
  デスクトップの表示:
      [Win] + [D]
  すべて最小化:
      [Win] + [M]
  元に戻す:
      [Win] + [Shift] + [M]
に相当します。


とろ  2003-04-05 02:45:12  No: 77577

> 正しくは、「MinButton = False」のフォームです。
> BorderStyle = 1 かどうかは関係ありません。(^^;)

失礼いたしました。 <(_^_)>

それにしても、 [Win] + [D] があったとは...
[Win] + [M] をいつも使用していました。
Windows を使い始めて8年、初めて知りました。

タメになりますねぇ。


たき  2003-04-14 20:20:14  No: 77578

返事が遅くなりまして申し訳ありません。
とろさん、魔界の仮面弁士さん、本当にどうもありがとうございました。
これからもよろしくお願いいたします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加