在C#程序运行时,如何改变无边框窗体大小和托动窗体,并且能处理鼠标事件

大哥大姐们:在C#程序运行时,如何改变无边框窗体大小和托动窗体,并且能处理窗体的鼠标事件,,还有就是QQ那鼠标放在头像上时会出现个人的相关资料的那个框框,如果用C#怎么处理,控件不能显示在窗体外部啊,不会是新的窗体吧?我是新手只有那么多分了
最新回答
茵沫

2024-06-23 01:34:54

控件是可以显示在里面的,你只要加个label,把label的属性设为visualble=fause就行。设置鼠标经过头像的mouseHover和mouseLeave事件,当mouseHover时label的属性visualble=true,当mouseLeave时label的属性visualble=fause即可。窗体的鼠标事件可以设置控件的cursor属性,里面可以选择许多种鼠标图形。
只要是正常的Form都可以改变窗体大小,但是无边框的窗体只能用函数改变或者设置属性,在debug后是不能改变的。拖动窗体需要在窗体的load时间里面写入当鼠标单击不放时的事件即可,不难。
号订婚

2024-06-23 01:09:57

呵呵,喜欢研究点什么很好,发现很多人都爱做QQ。。= =
之前我也有用过,无边框的模式,如果想直接修改大小是不可能的.
因为修改大小的操作是只对有边框的模式使用的.
拖动窗体:
1>窗体添加mousedown 事件
获取当前鼠标的坐标,保存在全局变量里.
2>窗体添加mousemove事件
每当鼠标移动的时候,先判断鼠标左键是否按下,如果是,则移动当前窗体坐标. 这个增量是鼠标和窗体坐标的差值. form.location
缩放窗体:
目前没发现又是无边框窗体又需要缩放的,QQ的界面腾讯自己封装的一套界面,他的实现方法,是覆盖窗体的paint方法,重新绘制..这个对新手来说比较难...
如果真的想做的话,你可以在窗体的四个边缘分别添加四个细长条panel
然后还是添加刚才的两个事件,修改form.size
3>至于那个资料框,就可以用一个无边框的form来实现了.做个timer,做个延时处理...
这些东西都不难,,只要你耐心去想,都是小儿科的技术.不得不说,Visual C#很强大..好好学.

--如果有兴趣,可以再把自动吸附屏幕边缘也做了,那个实现方法也类似.
离情几度

2024-06-23 10:47:31

你一次问那么多,怎么回答。。
还有就是QQ那鼠标放在头像上时会出现个人的相关资料的那个框框,如果用C#怎么处理,控件不能显示在窗体外部啊,----QQ是MDI窗体,即是说,QQ的实际界面是整个屏幕这么大,例如SQL,ACC数据库的管理器都是MDI窗体。

在C#程序运行时,如何改变无边框窗体大小和托动窗体,并且能处理窗体的鼠标事件-----这个在开发的时候做,有什么难?
守护爱人找到爱人

2024-06-23 02:41:00

this.width_"";
this.height_"";
你可以添加一个PANEL面板,然后在上面动态设置撒
我狠丑可是我也不温柔

2024-06-23 08:15:27

关注