HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2019
0130
さかriched20のEM_SETSELでのバイト指定0未解決


さか

リンク

2019/1/30(Wed) 21:42:41|NO.86443

リッチエディットについて詳しい方教えてください。

RichEdit1.0とRichEdit2.0でEM_SETSELを行うと1.0はバイトですが2.0は文字単
位となります。
2.0でも1.0と同様にバイト単位で指定したいのですがなにを設定すれば同じに
なりますか。

以下に簡単なサンプルをつけます。上が1.0、下が2.0です。
2.0の設定を追加することで選択箇所が同じになりますか。
よろしくお願いします。

#include "kernel32.as" #define WS_CHILD 0x40000000 ; 子ウインドウ.WS_POPUPとは併用できない #define WS_VISIBLE 0x10000000 ; 初期状態で表示される #define WS_HSCROLL 0x00100000 ; 水平スクロールバーを持つ #define WS_VSCROLL 0x00200000 ; 垂直スクロールバーを持つ #define ES_MULTILINE 0x0004 ; 複数行のエディットコントロール #define ES_AUTOVSCROLL 0x0040 ; テキストを自動的に縦向きにスクロール #define ES_AUTOHSCROLL 0x0080 ; テキストを自動的に横向きにスクロール #define ES_DISABLENOSCROLL 0x00002000 ; スクロールバーが必要ない場合にも、無効状態で表示する。 #define ES_NOHIDESEL 0x0100 ; コントロールがフォーカス持っていない場合も反転表示 #define EM_SETSEL 0x00000B1 #define EM_REPLACESEL 0x0000C2 ; リッチエディット1.0配置 LoadLibrary "RICHED32.DLL" style = WS_CHILD | WS_VISIBLE | WS_HSCROLL | WS_VSCROLL | ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_DISABLENOSCROLL | ES_NOHIDESEL winobj "RichEdit","",0,style, ginfo_winx, ginfo_winy /2 hRich1 = objinfo_hwnd( stat ) ; リッチエディット2.0配置 LoadLibrary "RICHED20.DLL" style = WS_CHILD | WS_VISIBLE | WS_HSCROLL | WS_VSCROLL | ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_DISABLENOSCROLL | ES_NOHIDESEL pos 0, ginfo_winy /2: winobj "RichEdit20A","",0,style, ginfo_winx, ginfo_winy /2 hRich2 = objinfo_hwnd( stat ) ; それぞれに文字を表示 s1="12345あいうえお" sendmsg hRich1, EM_REPLACESEL, 1, varptr(s1) sendmsg hRich2, EM_REPLACESEL, 1, varptr(s1) ; それぞれの文字を選択 sendmsg hRich1, EM_SETSEL, 7, 9 sendmsg hRich2, EM_SETSEL, 7, 9



この記事に返信する


ONION software Copyright 1997-2023(c) All rights reserved.