2011-08-01 35 views
0

我正在创建一个计时器解决方案。用户在文本框中输入小时,分钟秒,然后点击按钮开始。我希望计时器很小,因此它可以隐藏在屏幕的顶部。我将尺寸设定为这种尺寸的背景图像,以便它适合小尺寸。不过,我也希望用户能够最大化表单并在需要时占据整个屏幕。然而,图像显然保持原来的大小。是否有任何可能的方式来避免这种情况(即我可以添加哪些将被使用,如果被按下最大化希望我已经感觉这个问题的图像Windows窗体背景图像,尽量大一点

谢谢 - 。Colly

回答

1

我想你应该有两个如果应用程序处于较小模式,则使用较小的一个,如果应用程序处于最大化模式,则使用较小的一个

Form.SizeChanged事件每次在表单大小发生任何更改时都会引发您可以处理此事件并基于参数,你可以找出你是否应该改变图像

+0

感谢哈里斯 - 一个简单的测试,我做了folloing。私人空间CountDownTimer_SizeChanged(对象发件人,EventArgs e) Image =新位图(@“C:\ Users \ colinmck \ Desktop \ Timer \ CountDownTimer \ CountDownTimer \ test.bmp”); BackgroundImage = col; } - 这只是我为测试而创建的黑色图像。现在,当我最大化时它会改变并使用它 - 但是当它最小化时它会保持不变 - 我可以为我的较小图像创建一个图像变量,但是我将如何在两者之间变化 - 是否有某种称为max/min的bool?许多谢谢 –

+0

噢,还有一个评论 - 当最大化按钮被点击居中时,如果点击最小化,然后将它们移回原始位置 - 干杯,最好的方法是移动txt框/按钮等的位置。 –

+0

关于你的第一个评论,那么你将不得不注意resize事件参数,当参数变得小于某个阈值时,您可以将图像切换回更小,当用户增加尺寸并达到某个限制时,可以将图像切换为较大的图像。关于你的第二个评论,这应该是一个单独的问题:) –

1

Form.SizeChanged事件或Resize事件应该工作。

1

形式的设置BackgroundImageLayoutStretch