📄 set_listbox_hscroll.asm
字号:
_SetLBHScroll proto:DWORD ,:DWORD
.code
;为ListBox添加滚动条
;如果@nID为0,表@hwnd是listbox的句柄
;如果@nID不为0,则它是listbox的ID,@hwnd是listbox的父窗体的句柄
_SetLBHScroll proc uses esi edi ebx edx @hwnd,@nID
local @rc:RECT ,hdc
local @szBuf[255]:BYTE ,@size:SIZEL
.if @nID
invoke GetDlgItem,@hwnd,@nID
mov @hwnd,eax
.endif
invoke GetDC,@hwnd
mov hdc,eax
invoke SendMessage,@hwnd,LB_GETCOUNT ,0,0
mov edi,eax
xor esi,esi
xor ebx,ebx
.while esi<edi
invoke SendMessage,@hwnd,LB_GETTEXT ,esi,addr @szBuf
lea edx ,@size
invoke GetTextExtentPoint,hdc,addr @szBuf,eax,edx
.if @size.x>ebx
mov ebx,@size.x
.endif
inc esi
.endw
invoke SendMessage,@hwnd,LB_SETHORIZONTALEXTENT,ebx,0
invoke ReleaseDC,@hwnd,hdc
ret
_SetLBHScroll endp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -