ClientToScreen( )与ScreenToClient( )的区别
来源:互联网 发布:淘宝修容棒排行榜 编辑:程序博客网 时间:2024/05/19 00:37
ClientToScreen( )是把窗口坐标转换为屏幕坐标
ScreenToClient( )是把屏幕坐标转换为窗口坐标
屏幕坐标是相对于屏幕左上角的,而窗口坐标是相对于窗口用户区左上角的
一个窗体分为两部分:系统区和客户区
象标题和菜单之类的是系统区,由系统来控制;
Width, Height 是指整体的,ClientWidth, ClientHeight是指客户区的,两者相减就是系统区的相关属性;
ClientToScreen是把坐标从当前窗体转化成全屏幕的坐标;
ScreenToClient是把屏幕坐标转化成相对当前窗体的坐标;
VCL的结构,在TWinControl类中有一个DockSite属性(boolean),它的作用是是否允许别的控件停靠在它的上面,在TControl类中有一个DragKind属性,如果要这个控件能停靠在别的控件上,就把DragKind属性设成dkDock。
一般的支持停靠的程序都可以在主窗口的上下左右停靠,也就是说在主窗口的边上放上能被停靠的控件比较好(只要是从TWinControl继承的都行),一般我们都选择TPanel,为了便于读者理解,我们可以假定主窗口的左边可以停靠,所以在主窗口上放一个Align属性为alLeft的Panel,取名为LeftDockPanel,宽度为0,DockSite属性为True,当然我们的LeftDockPanel应该是可以改变大小的,所以在它右边再放一个TSplitter,取名为LeftSplitter,Align属性为alLeft。接下来就是停靠控件了,一般的程序停靠控件都是窗体,所以我们也建一个窗体,取名叫DockableForm,DragKind属性设成dkDock,DragMode属性设为dmAutomatic(自动停靠)。
0 0
- ClientToScreen( )与ScreenToClient( )的区别
- GetWindowRect、GetClientRect、ScreenToClient、ClientToScreen的区别
- 坐标的相对转换ClientToScreen与ScreenToClient
- VC ScreenToClient与ClientToScreen
- GetWindowRect GetWindowRect ScreenToClient ClientToScreen 区别
- GetWindowRect、GetClientRect、ScreenToClient与ClientToScreen
- GetWindowRect、GetClientRect、ScreenToClient与ClientToScreen
- GetWindowRect、GetClientRect、ScreenToClient与ClientToScreen
- GetClientRect , GetWindowRect ,ClientToScreen和ScreenToClient的疑问
- GetClientRect , GetWindowRect ,ClientToScreen和ScreenToClient的疑问
- ClientToScreen 和ScreenToClient
- GetWindowRect、GetClientRect、ClientToScreen、ScreenToClient
- ClientToScreen 和 ScreenToClient
- ClientToScreen 和ScreenToClient
- Popup&ScreenToClient&ClientToScreen
- ClientToScreen 和ScreenToClient
- ClientToScreen 和 ScreenToClient
- ClientToScreen 和ScreenToClient 用法
- VC下使用JMail实现邮件收发
- Activity间通过广播形式动态进行数据传输
- 文本文件编码方式判断
- 闲暇之作
- android多线程讲解(转载)
- ClientToScreen( )与ScreenToClient( )的区别
- android button 按下及抬起事件监听器设置
- Layout响应Click事件
- Android之九宫格解锁的实现
- AfxBeginThread的用法
- achartengine画出动态折线图
- vector 动态数组
- 【转载】VC中实现语音(声音)数据的采集(附源代码)
- htonl() htons()及inet_ntoa() inet_addr()的用法