📄 filter.asm
字号:
include filter.inc
.code
FilterDlgProc proc hWin:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
mov eax,uMsg
.if eax==WM_INITDIALOG
invoke FilterInitAll,hWin
invoke LoadIcon,hInstance,1000
invoke SendMessage,hWin,WM_SETICON,ICON_BIG,EAX
.elseif eax==WM_PAINT
invoke MainWindowPaint,hWin
.elseif eax==WM_COMMAND
mov eax,wParam
mov edx,eax
shr edx,16
and eax,0FFFFh
.if edx==BN_CLICKED
.if eax==IDC_FILTER_BTN_EXIT
invoke SendMessage,hWin,WM_CLOSE,0,0
.elseif eax==IDC_FILTER_BTN_OK
invoke FilterGetFilterStrings,hWin
invoke FilterSaveAs,hWin,eax
invoke FilterDoSearch,hWin,eax
.elseif eax==IDC_CHK_SAVEAS
invoke IsDlgButtonChecked,hWin,IDC_CHK_SAVEAS
.if eax==BST_CHECKED
invoke ShowWindow,hEditNewTable,SW_SHOW
invoke SetFocus,hEditNewTable
.else
invoke ShowWindow,hEditNewTable,SW_HIDE
.endif
.ENDIF
.ENDIF
mov eax,wParam
.if ax==IDC_EDT_EG_KW || ax==IDC_EDT_EXPLAIN_KW || ax==IDC_EDT_LEGEND_KW \
|| ax==IDC_EDT_PHRASE_KW || ax==IDC_EDT_SQLINPUT || \
ax==IDC_EDT_WORDINITIAL || ax==IDC_EDT_WORDLEN || ax==IDC_EDT_NEWTABLENAME
shr eax,16
.if eax==EN_UPDATE
invoke FilterGetFilterStrings,hWin
invoke FilterSaveAs,hWin,eax
invoke SetDlgItemText,hWin,IDC_EDT_SQLINPUT,eax
.endif
.endif
.elseif eax==WM_CLOSE
invoke StatusBarSetIndexText,1,0
invoke EndDialog,hWin,0
.else
mov eax,FALSE
ret
.endif
mov eax,TRUE
ret
FilterDlgProc endp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -