社区
界面
帖子详情
小弟,求教各位大哥,关于窗口的问题
h_bin16888
2004-12-31 08:25:32
问题1:如何把窗体移动到屏幕的右下角,类似QQ上线有个消息框弹出来!我用了GetWindowRect(rect),MoveWindow()可是rect。right和bottom老实是398和309??是不是尺寸的问题MoveWindow老实不对!
问题2:如何能够想QQ上线一样,自动从右下角慢慢升起,停顿2秒,然后自己又慢慢降下去,求教各位大哥了
...全文
126
12
打赏
收藏
小弟,求教各位大哥,关于窗口的问题
问题1:如何把窗体移动到屏幕的右下角,类似QQ上线有个消息框弹出来!我用了GetWindowRect(rect),MoveWindow()可是rect。right和bottom老实是398和309??是不是尺寸的问题MoveWindow老实不对! 问题2:如何能够想QQ上线一样,自动从右下角慢慢升起,停顿2秒,然后自己又慢慢降下去,求教各位大哥了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zjh824
2005-01-06
打赏
举报
回复
唉,怎么正好搞反了,看了下MSDN,SM_CYFULLSCREEN才是指的客户区。
看来有的时候不能光靠字面上的意思想。
h_bin16888
2005-01-02
打赏
举报
回复
先谢谢所有帮助我的兄弟们,问题解决了,特别谢谢:zjh824(学不好VC) ,我用MSDN在你给的SM_CYFULLSCREEN里面找到了我真正解决问题的方法!解决如下:(这下是真正直接显示在任务栏上面的)
int x,y;
CRect winRect,scrRect;
//得到没有任务栏的屏幕大小,好像叫vitrual screen
::SystemParametersInfo(SPI_GETWORKAREA,NULL,&scrRect,NULL);
//我自己的窗口
GetWindowRect(winRect);
SetWindowPos(&wndTopMost,scrRect.right -winRect.Width(),scrRect.bottom -winRect.Height(),winRect.Width(),winRect.Height(),SWP_SHOWWINDOW);
再次谢谢大家
h_bin16888
2005-01-02
打赏
举报
回复
楼上的兄弟,你的办法的确解决了99%的问题了,真的很谢谢你!
但是用SM_CYSCREEN,把任务栏给挡住了。CYFULLSCREEN反而又多出了一个任务栏的距离,真没有搞明白
h_bin16888
2005-01-01
打赏
举报
回复
楼上兄弟,我是这样用的,但是不行,你看看哪里错了
CWindowDC dc(this);
CRect winRect,rect;
GetWindowRect(rect);
winRect = rect;
dc.LPtoDP(winRect);
::MoveWindow(AfxGetMainWnd()->m_hWnd,winRect.right-60,winRect.bottom-100,60,100,FALSE);
问题2,2,3楼兄弟,用Time和MoveWindow,我试了一下,有拖影,这个怎么解决,并且(可能是我的时间和移动距离设置不太好)效果不是很好,没有那种流畅的感觉!
各位能够给断代码看看吗??
fanqing
2005-01-01
打赏
举报
回复
1.如果是对话框的话,对话框默认是不能改变大小的,必须设置他的属性.
zjh824
2005-01-01
打赏
举报
回复
int x,y;
x=::GetSystemMetrics(SM_CXSCREEN);
y=::GetSystemMetrics(SM_CYSCREEN);
SetWindowPos(&wndTopMost,x-rect.Width(),y,rect.Width(),rect.Height(),
SWP_SHOWWINDOW);
如果用的是SM_CYFULLSCREEN,就连任务栏也盖住了。
h_bin16888
2005-01-01
打赏
举报
回复
各位大哥,问题二,用Timer和MoveWindow已经解决好了,谢谢
问题一,真的不知道怎么弄,可能是我给大家没说明白,我的意思是想把程序界面一出来就自动在右下角显示,面积大约Rect(0,0,100,100);就好像输入法的那个提示栏一样!
bobob
2004-12-31
打赏
举报
回复
LPtoDP()
h_bin16888
2004-12-31
打赏
举报
回复
1。我也不知道是怎么回事。首先,GetWindowRect(rect),得出来得left=top=0,right=398,bottom=309,这是个固定得值,然后我用MoveWindow(AfxGetMainWnd()-》h_Wnd,right-60,bottom-100,60,100);不知道这样对不对?就是顶点在离右下角60,100得位置,大小就是60,100。我想肯定是GetWindowRect得出来得Rect肯定要 转换一下 他得值来符合MoveWindow,大家帮帮小弟
2。用Timer,MoveWindow不行吧,任务栏好像要被挡住。
oyljerry
2004-12-31
打赏
举报
回复
MoveWindow的位置是否设置对
用Timer定时MoveWindow移动窗口,自己控制一下速度
joycenter
2004-12-31
打赏
举报
回复
question1:是不是相对值不对? move值不合法?
question2:用一个timer啊
fanqing
2004-12-31
打赏
举报
回复
祝大家新年快乐!
基础
各位兄弟,在SDK编程中如果实现
窗口
分割呢?请问怎么得到一个函数的执行时间,单位毫秒!如何调试asp组件呀。用vc++调试编制的组件怎样画一个箭头?高分请教如何限制程序运行的方法?求助:通过编程DirectX抓屏-----...
.Net HTML 硬件
在VC.net中如何动态创建ActiveX控件请教斑竹及各位专家:关于DLL中类的动态链接,重要!在NT Service中调用WMI启动一个nodepad,为什么没有界面?关于CFileDialog的多选文件
问题
关于socket的
问题
?100+100=200如何将...
内推|大疆DJI|研发岗与非研发岗均有|西安+上海+深圳等
编程题 80+100+15,第三题滑动
窗口
为啥解出来一直是15啊,实在找不到bug,还有第一题,感觉写的没
问题
啊,还有哪些情况没考虑么 有大佬能解答下么,跪了##写简历别走弯路##我的实习上岸简历长这样#用过一些网上其他...
WEB开发文档2 总结
http://blog.donews.com/lvjiyong/archive/2006/06/29/931071.aspx怎样将后台生成的在内存中的图象显示到客户端Microsoft IE WebControls下载...显示数据下载中文名文件时保存文件名乱码
问题
关于用ASP.net绘图的
问题
...
我在CSDN参与的3000个帖子
一道数学题,忘了算法,请各位
大哥
教我! 16: 请问怎么从二进制数据流的数据生成一个位图对象? 17: 苦了两个月,终于考完了,散分庆祝 18: 苦了两个月,终于考完了,散分庆祝 19: 升两星暨...
界面
15,978
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章