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

F橋私的メモ

19F橋:2004/07/12(月) 21:35
整理前ではありますが。とりあえず目的達成出来ました
キーの動き(反応?レスポンス?)も(Windows95+V200上で)全く問題ないです

「FBHACK.BIを使ってエディットボックスで[↑]キー[↓]キーでのカーソル移動とりあえず動いた版」
(あ…しまった…ENTERキーでの移動を付けてない…。まぁここまで来ればすぐに出来ますね)

まぁ…仮仮暫定バージョンというか…もう少し整理して後日も1度公開します
(ニャン子さん。gobouさんありがとうございました!)

-------------------------------[MAIN.BAS]
#include "windows.bi"
#include "FbHack.bi"

#define WM_KEYDOWN &h0100

declare sub MAINFORM_KEYDOWN edecl (ScanCode As Long)

common shared MainForm As Object

EOBJMAX%=8
COMMON SHARED EOBJ(8) AS OBJECT
COMMON SHARED CWH&(8) 'ウィンドウハンドルチェックヨウ

VAR EOBJI AS LONG

FOR EOBJI=1 TO EOBJMAX%
EITEM$="EDIT"+MID$(STR$(EOBJI),2)
EOBJ(EOBJI).ATTACH GETDLGITEM(EITEM$)
CWH&(EOBJI)=EOBJ(EOBJI).GETHWND
NEXT EOBJI

var hWnd As Long
var uMsg As Long
var wParam As Long
var lParam As Long
var dwRet As Long

EOBJ(1).SETFOCUS

'
while 1
do while CheckEvent()
CallEvent
loop

do while FbCheckQueMessage()
GetWndProc hWnd, uMsg, wParam, lParam

Select Case uMsg
Case WM_KEYDOWN
EOBJI=0
FOR II%=1 TO EOBJMAX%
IF EOBJ(II%).GETHWND=HWND THEN EOBJI=II%
NEXT II%
''IF EOBJI>0 THEN MAINFORM_KEYDOWN( wParam ,EOBJI )
IF EOBJI>0 THEN MAINFORM_KEYDOWN( wParam )
End Select
loop
wend

-------------------------------[MAINFORM.SUB]
#include "windows.bi"
#include "FbHack.bi"

common shared MainForm As Object

COMMON SHARED EOBJ(8) AS OBJECT
COMMON SHARED CWH&(8) 'ウィンドウハンドルチェックヨウ

declare sub MAINFORM_START edecl ()
sub MAINFORM_START()
MainForm.Attach GetHwnd()
FOR J%=1 TO 8
DUMMY = FbInsertHackWnd(EOBJ(J%).GetHwnd, 0)
NEXT J%
end sub

declare sub MAINFORM_KEYDOWN edecl (ScanCode As Long)
sub MAINFORM_KEYDOWN(ScanCode As Long)

WH&=GETFOCUS
W=0
for I=1 to 8
if WH&=CWH&(I) then W=I
next I
IF W>0 THEN
IF SCANCODE=&H26 THEN
W=W-1 : IF W<1 THEN W=1
EOBJ(W).SETFOCUS
EOBJ(W).SETSELTEXT 0,0,0 'カーソル位置を先頭に
ELSE IF SCANCODE=&H28 THEN
W=W+1 : IF W>8 THEN W=8
EOBJ(W).SETFOCUS
EOBJ(W).SETSELTEXT 0,0,0 'カーソル位置を先頭に
ENDIF
ENDIF

if scancode = &h70 then EOBJ(1).SETFOCUS
if scancode = &h71 then EOBJ(2).SETFOCUS
if scancode = &h72 then EOBJ(3).SETFOCUS

end sub


新着レスの表示


名前: E-mail(省略可)

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

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

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

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