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

助けて

環境/言語:[WindowsXp C# ツールVS2005 NET Framework2.0]
分類:[.NET]

パソコン現在接続してるモニターの数と毎モニターのサイズはどうやって知りますか?
そして、たとえば、フォームの中にボタン@をクリックして、ひとつメモ帳(NOTEPAD.EXE)を開いて、モニター@に表示します。
ボタンAをクリックして、別のメモ帳を開いて、モニターAに表示します。
それはどうすればいいんですか
都合が良ければ、ぜひ指導していただきます。感謝しております。
  • 題名: Re[1]: 助けて
  • 著者: オショウ
  • 日時: 2008/07/31 17:19:54
  • ID: 22515
  • この記事の返信元:
    • [22513] 助けて 黒田小小 2008/07/31 16:05:11
  • この記事への返信:
  • ツリーを表示
■No22513に返信(黒田小小さんの記事)
> パソコン現在接続してるモニターの数と毎モニターのサイズはどうやって知りますか?
> そして、たとえば、フォームの中にボタン@をクリックして、ひとつメモ帳(NOTEPAD.EXE)を開いて、モニター@に表示します。
> ボタンAをクリックして、別のメモ帳を開いて、モニターAに表示します。
> それはどうすればいいんですか
> 都合が良ければ、ぜひ指導していただきます。感謝しております。

  Win32 API使いました。
  GetSystemMetrics(SM_CMONITORS) で、台数が解ります。

  サイズは・・・
  GetSystemMetrics(SM_XVIRTUALSCREEN) とか
  GetSystemMetrics(SM_YVIRTUALSCREEN) とかで、各々の開始位置と
  GetSystemMetrics(SM_CXVIRTUALSCREEN) と
  GetSystemMetrics(SM_CYVIRTUALSCREEN) から、幅・高さを算出します。

  モニターが、プライマリに対しセカンダリ以降が、どのように配置され
  ているかは、上記、位置・サイズから判断しないといけないようです。

  アプリの起動位置は、上記モニターのサイズから割り出して位置指定す
  るか・・・別の方法があったかと思いますが、調べ切れなくて、上記の
  位置・サイズから算出して行いました。

以上。参考まで・・・
  • 題名: Re[2]: 助けて
  • 著者: 黒田小小
  • 日時: 2008/07/31 17:36:48
  • ID: 22516
  • この記事の返信元:
  • この記事への返信:
  • ツリーを表示
オショウさん、ご指導して有難うございます。
サイズとモニター数の問題は解決しました。
でも、どうやってそれを利用して、別のプログラム(たとえば、WINDOWSメモ帳)を開くとき位置をコントロールしますか?
助けていただきますか。大変感謝しております。
  • 題名: Re[3]: 助けて
  • 著者: オショウ
  • 日時: 2008/07/31 17:46:32
  • ID: 22517
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
■No22516に返信(黒田小小さんの記事)
> オショウさん、ご指導して有難うございます。
> サイズとモニター数の問題は解決しました。
> でも、どうやってそれを利用して、別のプログラム(たとえば、WINDOWSメモ帳)を開くとき位置をコントロールしますか?
> 助けていただきますか。大変感謝しております。

  あれ?この手のカキコがどこかであったような・・・
  .NETでは起動するアプリの表示位置を制御できない場合が
  あります。それもWin32 API使わないと・・・

  CreateProcessでの構造体に渡す情報で位置指定するか、
  起動してからそのWindowハンドルを使って、SetWindowPos
  で、表示位置を変更するか・・・

以上。
  • 題名: Re[2]: 助けて
  • 著者: よねKEN
  • 日時: 2008/07/31 21:41:32
  • ID: 22520
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
> ■No22513に返信(黒田小小さんの記事)
>>パソコン現在接続してるモニターの数と毎モニターのサイズはどうやって知りますか?

Screenクラスを使えば、モニター数もサイズも知ることができますよ。
他のアプリのウィンドウ位置の制御はWindowsAPIの使用が必要だと思います。
  • 題名: 【注意】「書き込みのルール」をお読みください
  • 著者: 管理人
  • URL: http://dobon.net/
  • 日時: 2008/08/01 3:40:08
  • ID: 22521
  • この記事の返信元:
    • [22513] 助けて 黒田小小 2008/07/31 16:05:11
  • この記事への返信:
    • (なし)
  • ツリーを表示
No22513 および No22511 の黒田小小様の書き込みを拝見させていただきますと、「書き込みのルールについて」のルールをお守りいただけていません。ご面倒とは思いますが、「書き込みのルールについて」をお読みいただき、ルールをお守りいただけますように、よろしくお願いいたします。

書き込みのルールについて
http://dobon.net/vb/bbs/index.html

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