#include
#define numlines ((int)(sizeof sysmetrics/sizeof sysmetrics[0]))
struct
sysmetrics=;
lresult callback wndproc(hwnd,uint,wparam,lparam);//視窗函式原型
int winapi winmain(hinstance hinstance,hinstance hprevinstance,pstr szcmdline,int icmdshow)
text("the hello program"),
cw_usedefault,
cw_usedefault,
cw_usedefault,
cw_usedefault,
null,
null,
hinstance,
null);
showwindow(hwnd,icmdshow);
updatewindow(hwnd);
while(getmessage(&msg, null,0,0))
return msg.wparam;
}lresult callback wndproc(hwnd hwnd,uint message,wparam wparam,lparam lparam)
si.fmask=sif_pos;
setscrollinfo(hwnd,sb_vert,&si,true);
getscrollinfo(hwnd,sb_vert,&si);
if (si.npos!=ivertpos)
return 0;
case wm_hscroll:
si.cbsize=sizeof(si);
si.fmask=sif_all;
getscrollinfo(hwnd,sb_horz,&si);
ihorzpos=si.npos;
switch(loword(wparam))
si.fmask=sif_pos;
setscrollinfo(hwnd,sb_horz,&si,true);
getscrollinfo(hwnd,sb_horz,&si);
if(si.npos!=ihorzpos)
return 0;
case wm_paint:
hdc=beginpaint(hwnd,&ps);
si.cbsize=sizeof(si);
si.fmask=sif_pos;
getscrollinfo(hwnd,sb_vert,&si);
ivertpos=si.npos;
getscrollinfo(hwnd,sb_horz,&si);
ihorzpos=si.npos;
ipaintbeg=max(0,ivertpos+ps.rcpaint.top / cychar);
ipaintend=min(numlines-1,ivertpos+ps.rcpaint.bottom / cychar);
for(i=ipaintbeg;i<=ipaintend;i++)
endpaint(hwnd,&ps);
return 0;
case wm_destroy:
postquitmessage(0);
return 0;
}return defwindowproc(hwnd,message,wparam,lparam);
}
window程式設計之滾動條 老式滾動條
顯示滾動條,只需要在createwindow的第三個引數中包括視窗樣式 ws 識別符號ws vscroll 垂直捲動 和 或ws hscroll 水平捲動 即可 這些捲動列通常放在視窗的右部和底部,伸展為顯示區域的整個長度或寬度。顯示區域不包含捲動列所佔據的空間。但是有這些是遠遠不夠滴.1.首先,滾...
07 Windows程式設計 視窗滾動條
兩個函式 getscrolnfo和setscrollnfo 乙個結構 scrollinfo 兩個訊息 wm create和wm size 滾動條結構體 typedef struct tagscrollinfo scrollinfo,lpscrollinfo cbsize 以位元組為單位,結構體大小。...
python橫向滾動條 控制滾動條
調過js指令碼控制 python 1.coding utf 8 2.from selenium import webdriver 3.import time 5.driver webdriver.firefox 6.driver.get 7.搜尋 8.driver.find element by i...