滚动条范围位置函数(SetScrollRange、SetScrollPos、GetScrollRange、GetScrollPos)
2014-07-02 10:22
246 查看
滚动条的范围是一对整数,默认情况下,滚动条的范围是0~100。
SetScrollRange(hwnd,iBar,iMin,iMax,bRedraw)这里的iBar参数要么是SB_VERT,要么是SB_HORZ,iMin和iMax分别对应滚动条范围的最小值和最大值,需要Windows根据新的范围来重绘滚动条时将bRedraw设为TRUE.
SetScrollPos(hwnd,iBar,iPos,bRedraw //指定滑块在滚动条范围中的位置。
GetScrollRange // 获取滚动条当前范围
GetScrollPos //获取滚动条当前位置
=======================================
函数定义格式:
[DllImport("user32.dll", EntryPoint="GetScrollPos")]
public static extern int GetScrollPos (
int hwnd,
int nBar
);
作用:
可以返回指定控件,指定类型的滚动条位置。
参数说明:
hwnd:指定控件的句柄。
nBar:指定类型的滚动条。0:水平滚动条,1:垂直滚动条。
用例:
int pos = GetScrollPos((int)this.panel1.Handle, 0); //panel1的水平滚动条位置
int pos2 = GetScrollPos((int)this.panel1.Handle , 1); //panel1的垂直滚动条位置
延伸用途:
1.借助此函数,可以返回控件在容器中的绝对座标位置。
例:
[csharp] view
plaincopy
int pos = GetScrollPos((int)this.panel1.Handle, 0);//水平滚动条位置
int pos2 = GetScrollPos((int)this.panel1.Handle , 1); //垂直滚动条位置
int iLeft = this.radioButton1.Left + pos;
int iTop = this.radioButton1.Top + pos2;
MessageBox.Show("radioButton1的绝对座标:Left:" + iLeft.ToString() + ",Top:" + iTop.ToString());
SetScrollRange(hwnd,iBar,iMin,iMax,bRedraw)这里的iBar参数要么是SB_VERT,要么是SB_HORZ,iMin和iMax分别对应滚动条范围的最小值和最大值,需要Windows根据新的范围来重绘滚动条时将bRedraw设为TRUE.
SetScrollPos(hwnd,iBar,iPos,bRedraw //指定滑块在滚动条范围中的位置。
GetScrollRange // 获取滚动条当前范围
GetScrollPos //获取滚动条当前位置
=======================================
函数定义格式:
[DllImport("user32.dll", EntryPoint="GetScrollPos")]
public static extern int GetScrollPos (
int hwnd,
int nBar
);
作用:
可以返回指定控件,指定类型的滚动条位置。
参数说明:
hwnd:指定控件的句柄。
nBar:指定类型的滚动条。0:水平滚动条,1:垂直滚动条。
用例:
int pos = GetScrollPos((int)this.panel1.Handle, 0); //panel1的水平滚动条位置
int pos2 = GetScrollPos((int)this.panel1.Handle , 1); //panel1的垂直滚动条位置
延伸用途:
1.借助此函数,可以返回控件在容器中的绝对座标位置。
例:
[csharp] view
plaincopy
int pos = GetScrollPos((int)this.panel1.Handle, 0);//水平滚动条位置
int pos2 = GetScrollPos((int)this.panel1.Handle , 1); //垂直滚动条位置
int iLeft = this.radioButton1.Left + pos;
int iTop = this.radioButton1.Top + pos2;
MessageBox.Show("radioButton1的绝对座标:Left:" + iLeft.ToString() + ",Top:" + iTop.ToString());
相关文章推荐
- 滚动栏范围位置函数(SetScrollRange、SetScrollPos、GetScrollRange、GetScrollPos)
- VC/MFC加滚动条显示大图片SetScrollRange()、SetScrollInfo()两种思路实现及其两者优劣比较
- 在CListView中用SetScrollPos改变滚动条的位置后,窗口中显示的内容如何也跟着移动实现。
- GridEh Bug MoveCurrent SetScrollPos GetScrollInfo
- API函数 GetScrollPos 获取滚动条位置的妙用
- GetPageSize和GetPageScroll:获取页面大小、窗口大小和滚动条位置
- SetScrollSizes( nMapMode, GetDocument( )->GetMyDocSize( ) )中的MSDN解释
- SetScrollPos
- SetScrollRange
- 获取页面高度,窗口高度,滚动条高度等参数值getPageSize,getPageScroll
- Swift - 使用set,get确保索引加减在正常的范围内
- GetscrollRange
- 获取页面高度,窗口高度,滚动条高度等参数值getPageSize,getPageScroll
- GetPageSize和GetPageScroll:获取页面大小、窗口大小和滚动条位置
- input 元素setSelectionRange中选中特定范围的内容ie不行
- 动态地往datagirdview中添加数据,当所添加的数据超过datagridview的显示范围后,滚动条就无法显示,程序出现假死状态,(scrollbars=both)
- SetScrollRange SetScrollInfo
- How to get random number within a range using C++ - 如何用C++获取一定范围内的随机数
- SetScrollRange
- GetPageSize和GetPageScroll:获取页面大小、窗口大小和滚动条位置