2013-01-22 6 views
7

何らかのマシン用のHMI(ヒューマンマシンインタフェース)プログラムを作成しました。 プログラムは "Windows Standard Embedded 7"のタッチパネルで動作します。 私はそれはそれは、Windows 7の組み込みバージョンリモートデスクトップ経由で見たときにフォームが最大になる

  • 私のプログラムのメインフォームのWindowStateNormalに設定されている、との解像度と一致するように設定サイズは私の問題に違いはないと思いますタッチパネル(1280x800)。
  • FormBorderStyleNoneに設定されています。
  • StartPositionは、CenterScreenに設定されています。

問題がある:

  • 右/下左/上から完全に画面を埋め、プログラムは、それが必要として示されているタッチスクリーン上で直接プログラムを起動します。これで結構です!

  • リモートデスクトップ経由でタッチパネルにログインしているとき(大きな画面で、1920x1200と言う)、プログラムを開始すると(プログラムが開始されてから)、プログラムは期待通りに起動します画面の中央に1280x800のサイズで表示されます。これで結構です!

  • rdpを使用してログオンしているときにプログラムが既に実行されている間、プログラムは最大化されて表示され、画面全体(1920x1200)を満たします。私のプログラムの全体のレイアウトが1280x800に作られているので、これは良くありません!

なぜ私のプログラムがこのように動作しているのか、あるいは何らかの理由でrdpセッションに関係していると思われる人はいますか?

+0

興味深いテスト:あなたが既に実行しているアプリケーションにRDPを実行すると 'SizeChanged'イベントが発生しますか?もしそうなら..あなたは登録し、フォームのサイズを変更することができます。 –

+6

ようこそStackOverflow!私はあなたのポストを改造する自由を取って、書式設定のものをより良く使うようにしました。私の名前より上の時間をクリックすると、変更した内容を確認できます。あなたの投稿が良かったと思ったり、もっと改善したり変更したりしたい場合は、左側の 'edit'ボタンをクリックして変更してください。 – Default

+0

ありがとうございます。 – JohnSaps

答えて

1

これは、おそらく、システムが画面の境界線を基準にしてウィンドウのレイアウトを維持しようとしていることが原因です。私はいくつかのアプリケーションでこれを数回気付いた。アプリが最大化されていないが、解像度が高いRDPでスクリーン幅の100%を占める場合、それは100%に保たれます。

これを防ぐには、フォームコンストラクタでMinimumSizeMaximumSizeのpropreties odフォームを1280x800に設定してみてください。それは動作するはずです

+0

私はこの記事を書いて以来、問題は再び現れていません! – JohnSaps

+0

私はこのプロジェクトのために同じプログラムベースを使用しているので、私が作業している現在のプロジェクトを終了するまでスレッドを開いておきます。問題が再現されない場合は、問題が解決されているはずです。 Visual StudioまたはWindowsのアップデート。途中で面白いコメント。 – JohnSaps

関連する問題