C# 使窗口的长宽固定不变

jianqifeihong 2010-09-12 12:42:54

如题,给点思路。
...全文
230 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
jianqifeihong 2010-09-15
  • 打赏
  • 举报
回复
哎,没办法,结了吧
maysaber 2010-09-13
  • 打赏
  • 举报
回复
Resize事件可以的:获取长框比例之后,然后在设置长或者框

private void Form1_Resize(object sender, EventArgs e)
{
float fltRate;
fltRate=(float)intX/intY;
this.Width =(int) (fltRate*this.Height);
}
ccitzs 2010-09-13
  • 打赏
  • 举报
回复
刚才试了一下,这个方法效果是能出来,用户体验差太多了,改变长宽的时候窗体闪个不停,水平或者垂直拖动的时候窗体根本不改变,只有45°拖动的时候才改变,最好的方法还是自己重写鼠标事件吧
zhouxuancq0912 2010-09-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zenghd 的回复:]

设置 this.FormBorderStyle = FormBorderStyle.FixedDialog ;
[/Quote]
弄个属性就可以了
jianqifeihong 2010-09-12
  • 打赏
  • 举报
回复
我说的是长宽比例不变,没说清楚
jianqifeihong 2010-09-12
  • 打赏
  • 举报
回复
这个大小都不能改变了,此计不妥
ZengHD 2010-09-12
  • 打赏
  • 举报
回复
设置 this.FormBorderStyle = FormBorderStyle.FixedDialog ;
种草德鲁伊 2010-09-12
  • 打赏
  • 举报
回复
最笨的方法,将窗口最大尺寸和最小尺寸设成和初始尺寸一样。
jianqifeihong 2010-09-12
  • 打赏
  • 举报
回复
总算有人理解我的意思了,但是我这样做后改变大小时闪的要死
wuyq11 2010-09-12
  • 打赏
  • 举报
回复
在窗体resize事件中修改width,height
trilcc 2010-09-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zenghd 的回复:]
设置 this.FormBorderStyle = FormBorderStyle.FixedDialog ;
[/Quote]对的

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧