したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

過去の掲示板過去ログ を探しています。

14ニャン子:2004/02/21(土) 09:11
訂正:(原因、通常の改行コード0x0d,0x0dが0x0dとなっていた)

正解:(原因、通常の改行コード0x0d,0x0aが0x0dとなっていた)

あと、表示行数を取得する例ですが関数の初期処理では
__declspec(dllexport) __stdcall DWORD GetRitchTextLine(HWND hWnd) {

EditStreamBuf.dwCookie = RITCH_READBUFLINE;
EditStreamBuf.pfnCallback = (EDITSTREAMCALLBACK)&EditStreamCallBack;

BufSize = 0;
SendMessage(hWnd, EM_STREAMOUT, SF_TEXT, (LONG)&EditStreamBuf);

return( BufSize );

}
としてます。この関数から呼び出されるコールバック関数は
LRESULT CALLBACK EditStreamCallBack(DWORD dwCookie, LPBYTE pbBuf, LONG cb, LONG *pcb) {
int i;
switch(dwCookie) {
・・・ 中略 ・・・・・
case RITCH_READBUFLINE :
for (i=0; i< cb; i++) {
if (pbBuf[i] == 0x0d) {
BufSize++;
}
}
*pcb = cb;
break;
}
return(0);
}
となっています。つまり、バッファの中にある0x0dを探しカウントアップする
だけです。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板