teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

修正

2017/09/28 15:10

投稿

Zuishin
Zuishin

スコア28675

answer CHANGED
@@ -1,3 +1,3 @@
1
- 0. [System.Windows.Forms のソース](http://referencesource.microsoft.com/#System.Windows.Forms/winforms/Managed/System/WinForms/Form.cs,045f8148144d8c10,references) を見ると、`WM_DPICHANGE` を受け取った時にこのイベントが呼ばれるようになっています。`WM_DPICHANGE` で取得できる解像度は 0 から 65535 なので `uint` である必要はありません。大は小を兼ねるということで扱いやすい `int` で実装したのでしょう。
1
+ 0. [System.Windows.Forms.Form のソース](http://referencesource.microsoft.com/#System.Windows.Forms/winforms/Managed/System/WinForms/Form.cs,045f8148144d8c10,references) を見ると、`WM_DPICHANGE` を受け取った時にこのイベントが呼ばれるようになっています。`WM_DPICHANGE` で取得できる解像度は 0 から 65535 なので `uint` である必要はありません。大は小を兼ねるということで扱いやすい `int` で実装したのでしょう。
2
2
 
3
3
  0. ソースの `OnDpiChanged` をご覧ください。`Cancel` が `true` の時には解像度の変更があっても `Form` の変更をしないようになっています。