Open k-kawaa opened 3 years ago
「winforms richtextbox ズーム 禁止」で検索してみましたが、WinFormsからは直接禁止する機能は提供されておらず、 リッチテキストボックスへの「Ctrl+マウスホイール」のキー入力をWin32APIで無効化する方法がとられるようです。
引っかかったサイト: How can I disable text zoom in RichTextBox when holding the Ctrl key and mouse wheeling? - MSDNフォーラム Disable RichTextBox zooming while scrolling with ctrl key - StackOverFlow
どちらも同じ方法がとられています。
簡単に説明すると、リッチテキストボックスにメッセージが送られてきたことを察知した時(WndProc)、もしそのメッセージがCtrl+マウスホイールの入力だった場合は無効にして送信し直しています(SendMessage)。
Win32APIのウィンドウとメッセージの関係については調べてみて下さい。
ありがとうございます。
RichTextBoxは現状、フォントサイズの変更が簡単にできてしまう状態です。 この場合、フォント設定画面で設定したものが無駄になってしまうので、固定するか、変更できないようにするしかないと思われます。 方法を知っている方、教えていただけると幸いです。