【发布时间】:2013-04-07 05:58:11
【问题描述】:
第一次在 GUI 项目上工作.. 第一次在 Windows 上工作,所以如果这是一个真正的菜鸟问题,请提前道歉。 我正在从 vb.net WPF 开始逐步进入 Windows 编程。在 Visual Studio Express 2012 中工作。
我正在尝试研究如何使用窗口本身来缩放窗口中的所有元素。 例如,我会创建一个窗口,比如 1280x720,并在窗口中放置一些图像。说一个在顶部,一个在角落。 (这是一个基本的基于媒体的应用程序) 当我调整那个窗口的大小时,我希望整个窗口随之缩放,所以如果窗口变大,图像 1 和 2 会变大,但是这必须成比例地发生,这样如果我让窗口在一个方向上变大很多图像不能重叠。想象一下窗口是一个图像,我正在尝试调整它的大小。 (在我目前的尝试中,重叠的东西是我最接近让它工作的东西)。
生产中的布局将更加复杂,包括媒体元素(视频)、图像、文本等,并且都必须相应地缩放。 这不是用户与之交互的东西,因此没有表单元素等,因此我不需要表单字段等在整个缩放过程中保持相同的大小。我只需要像缩放图片一样缩放所有内容。例如,如果我在 1920x1080 屏幕上显示这个 1280x720 (16:9) 布局,最大化它应该看起来相同,只是更大。
希望有人能以此为我指明正确的方向。
到目前为止我所做的尝试——我在 google 上找到的几篇与此相关的文章(我很可能正在搜索错误的内容)导致我将所有元素放在一个视图框中,这导致了我提到的重叠早些时候。
想法?
【问题讨论】:
-
发布您需要的屏幕截图,我可以告诉您在 WPF 中实现它的正确方法。 Viewbox 是要走的路,你应该在每个网格中放置 2 行网格和一个 Viewbox。