谁能告诉我Winform这个SIZE问题怎么解决呀?

hellNo 2012-06-07 03:30:57

// 下面这段是当我触发一个事件时执行,更换sp的背景图和窗体SIZE
SysPrompt sp = new SysPrompt();//SysPrompt是一个窗体,这个窗体只有一个默认背景图,大小是500*500的窗体
sp.Show(); //窗体显示
sp.Size = new System.Drawing.Size(200,400); // 这三个同时设置才能更改窗体大小
sp.MaximumSize = new System.Drawing.Size(200,400); // 这三个同时设置才能更改窗体大小
sp.MinimumSize = new System.Drawing.Size(200,400); // 这三个同时设置才能更改窗体大小
sp.BackgroundImage = global::PCMainForms.Properties.Resources.发送弹出msn; //更换背景图

//现在的问题是我触发事件时,他会先把窗体Show出来,
//但是show出来的时候这个窗体会显示500*500的默认图背景的窗体,
//然后执行后面的设置SIZE和更换背景图,所以每次执行的时候会闪一下,
//大家懂我意思把,就是从500*500默认背景图瞬间变成200*400的发送弹出msn的背景图的窗体,
//烦人的是设置窗体SIZE必须在show后面执行才管用,在show之前是不管用的,
//所以请教大家怎么设置SIZE才能不让他闪那么一下,
//有办法在show之前就能更改size么?或者其他什么办法??
// 如果有没说清楚的我补充!
...全文
206 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
熙风 2012-06-08
  • 打赏
  • 举报
回复
擦,,
hellNo 2012-06-07
  • 打赏
  • 举报
回复
大哥,难道是我VS有问题么?我把show放后面SIZE 不变啊,size只在show之后才变。。。你们都是show之前就能更改size??????????????????不会吧????????[Quote=引用 2 楼 的回复:]

把show放到后面,这么死心眼呢
[/Quote]
SocketUp 2012-06-07
  • 打赏
  • 举报
回复
Shown事件
Sakeyi 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
把show放到后面,这么死心眼呢
[/Quote]
正解!
__天涯寻梦 2012-06-07
  • 打赏
  • 举报
回复
SysPrompt sp = new SysPrompt();//SysPrompt是一个窗体,这个窗体只有一个默认背景图,大小是500*500的窗体
sp.MinimumSize = new System.Drawing.Size(200,400); // 这三个同时设置才能更改窗体大小
sp.Size = new System.Drawing.Size(200,400); // 这三个同时设置才能更改窗体大小
sp.MaximumSize = new System.Drawing.Size(200,400); // 这三个同时设置才能更改窗体大小
sp.BackgroundImage = global::PCMainForms.Properties.Resources.发送弹出msn; //更换背景图
sp.Show(); //窗体显示

先设置 MinimumSize ,再设置 Size ,最后设置 MaximumSize ,这样 Show 放后面,试试应该是有效的
bdmh 2012-06-07
  • 打赏
  • 举报
回复
把show放到后面,这么死心眼呢
熙风 2012-06-07
  • 打赏
  • 举报
回复
SysPrompt sp = new SysPrompt();//SysPrompt是一个窗体,这个窗体只有一个默认背景图,大小是500*500的窗体
sp.Size = new System.Drawing.Size(200,400); // 这三个同时设置才能更改窗体大小
sp.MaximumSize = new System.Drawing.Size(200,400); // 这三个同时设置才能更改窗体大小
sp.MinimumSize = new System.Drawing.Size(200,400); // 这三个同时设置才能更改窗体大小
sp.BackgroundImage = global::PCMainForms.Properties.Resources.发送弹出msn; //更换背景图
sp.Show(); //窗体显示

换个位置应该不闪

110,534

社区成员

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

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

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