以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  窗口设计中,图片居中与拉伸的问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=82979)

--  作者:lovemaders
--  发布时间:2016/3/29 10:44:00
--  窗口设计中,图片居中与拉伸的问题
在窗口设计的时候同一个窗口里面有20个按钮,如果背景图片选居中会比较流畅基本看不出延迟,但是如果选拉伸或者缩放,会有很明显的延迟,这个是本身狐表就这样设定的吗?
--  作者:大红袍
--  发布时间:2016/3/29 10:47:00
--  

 延迟指的是启动的时候,还是运行的时候?

 

 对图片进行处理肯定会耗时的,而且图片越大耗时肯定越多。


--  作者:lovemaders
--  发布时间:2016/3/29 10:52:00
--  运行的时候
打开窗口的时候很明显的感觉到差距 居中和拉伸  拉伸和缩放一样都有延迟的感觉,居中和正常模式感觉不出来延迟。图片是1920*100的图片不算大吧。
--  作者:大红袍
--  发布时间:2016/3/29 11:09:00
--  

图片大不大,看其文件的大小才知道。

 

如果你把图片的拉伸属性设置在按钮或者timertick事件里呢?

 

Dim p = e.Form.Controls("PictureBox1").basecontrol
p.SizeMode = 2


--  作者:lovemaders
--  发布时间:2016/3/29 11:19:00
--  那图片本身属性选什么啊?
那图片本身属性选什么啊?
--  作者:lovemaders
--  发布时间:2016/3/29 11:26:00
--  我刚才试了下把图片空间删掉

我刚才试了下把图片控件删掉,用代码生成图片背景貌似比用图片控件流畅很多。

 

Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1")
\'tab.TabPages(0).BackgroundImage = GetImage("d:\\test.jpg")
tab.TabPages(0).BackgroundImage = GetImage(ProjectPath & "Images\\012.jpg")
tab.TabPages(0).BackgroundImageLayout = ImageLayout.Stretch

 

 

如果10个页面都用这一张图片代码怎么写啊,不会要写10句吧?


--  作者:大红袍
--  发布时间:2016/3/29 11:28:00
--  

Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1")
For i As Integer = 0 To 9
    tab.TabPages(i).BackgroundImage = GetImage(ProjectPath & "Images\\012.jpg")
    tab.TabPages(i).BackgroundImageLayout = ImageLayout.Stretch
Next


--  作者:lovemaders
--  发布时间:2016/3/29 11:37:00
--  这样好像比较流畅
这样用代码指定图片看似比在里面加入图片控件麻烦,但是流畅度却高很多,这个意思是不是如果类似的场景更可能多的写代码而不是加控件呢?
--  作者:大红袍
--  发布时间:2016/3/29 11:51:00
--  

 写代码是自己可控的,而设置属性的,是foxtable帮你完成的,自由的程度不同。只要不是太难受,还是设置属性方便。