こんにちは、サード パーティのアプリケーションでスライダー/トラックバーの値を増減したいと考えています。sendMessage() を使用して同じことを行うことは可能ですか? スライダーのハンドルを手に入れました。誰か助けてくれませんか?ありがとう。
1543 次
1 に答える
3
最初に SendMessage 関数を次のように定義します
[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern IntPtr SendMessage(IntPtr hWnd, UInt32 Msg, IntPtr wParam, IntPtr lParam);
次に、このようにスライダーの位置を更新します
uint TBM_GETPOS = 0x0400;
uint TBM_SETPOS = 0x0405;
IntPtr hWnd = ...
IntPtr pos = SendMessage(hWnd, TBM_GETPOS, 0, 0);
SendMessage(hWnd, TBM_SETPOS, 1, pos.ToInt32() + 1);
を使用して最大および最小の利用可能な位置を取得します
uint TBM_GETRANGEMAX = 0x0402;
uint TBM_GETRANGEMIN = 0x0401;
IntPtr max = SendMessage(hWnd, TBM_GETRANGEMAX, 0, 0);
IntPtr min = SendMessage(hWnd, TBM_GETRANGEMIN, 0, 0);
于 2011-01-17T22:53:38.763 に答える