回答編集履歴
1
ダブルクリックしたときの挙動に違和感があったので EditWordBreak を修正しました。
answer
CHANGED
@@ -1,7 +1,11 @@
|
|
1
1
|
とりあえず、こんな感じでいかがでしょう。
|
2
|
+
ダブルクリックしたときの挙動に違和感があったので EditWordBreak を修正しました。
|
2
3
|
|
3
4
|
```C#
|
4
5
|
const int EM_SETWORDBREAKPROC = 0xD0;
|
6
|
+
const int WB_LEFT = 0;
|
7
|
+
const int WB_RIGHT = 1;
|
8
|
+
const int WB_ISDELIMITER = 2;
|
5
9
|
|
6
10
|
[DllImport("user32")]
|
7
11
|
private static extern IntPtr SendMessage(IntPtr hWnd, int msgId, IntPtr wParam, EditWordBreakProc lParam);
|
@@ -16,6 +20,15 @@
|
|
16
20
|
|
17
21
|
private int EditWordBreak(IntPtr ipch, int ichCurrent, int cch, int code)
|
18
22
|
{
|
23
|
+
switch (code)
|
24
|
+
{
|
25
|
+
case WB_ISDELIMITER:
|
26
|
+
return 0;
|
27
|
+
case WB_LEFT:
|
28
|
+
return 0;
|
29
|
+
case WB_RIGHT:
|
30
|
+
return cch;
|
31
|
+
}
|
19
32
|
return 0;
|
20
33
|
}
|
21
34
|
```
|