在.Net中创建窗体时,它将显示为纵向布局中的对话框。
通常没有人喜欢横向阅读,或者倒置阅读,但我有一个非常合理的理由来旋转表单。
有人知道如何在Windows上使用C#吗?
发布于 2009-09-09 14:10:56
这将是一些额外的工作,但如果您只需要旋转表单的内容(而不是包括标题栏、窗口控件等在内的整个窗口,这是我以前从未见过的),那么您可以创建一个完全由所有者绘制的用户控件,旋转90度,并将其放在普通窗体上。您甚至不必调整您的所有绘图,因为您可以对您的Graphics对象执行RotateTransform,然后正常绘制所有内容。
或者,如果您需要整个表单旋转,您可以使表单无边界,然后做基本相同的事情,绘制标题栏和窗口控制自己。
Update:这里有一个指向MSDN文章的链接,该文章展示了如何在C#中旋转整个屏幕:
http://msdn.microsoft.com/en-us/library/ms812499.aspx
这是为普通Windows (而不是Windows ),所以它应该对您的海豚工作,虽然它将旋转所有Windows,而不仅仅是您的应用程序的表单。根据工作速度和总体需求,当应用程序获得焦点时,您可以将屏幕旋转90度,然后在应用程序失去焦点时将其旋转回到正常状态。
更新2:我只是重新阅读了你的问题和评论。您正在讨论的是在一个单独的进程中旋转单独应用程序的窗口,所以WPF肯定不会在这里帮助您。MSDN链接可能正是您所需要的。在应用程序中,您将屏幕旋转90度,然后在一个单独的进程中启动另一个应用程序。如果您可以强制将单独应用程序的窗口最大化,这将是最好的,您可以通过P/调用FindWindow和SendMessage API来做到这一点(您还可以使窗口始终位于顶部,这将使您的计算机处于某种类型的kiosk模式中)。有一个版本的过程代码,基本上使启动另一个应用程序为阻塞调用,这意味着您的应用程序将等待关闭前的应用程序恢复。一旦应用程序关闭,您可以将屏幕恢复到其正常方向。
https://stackoverflow.com/questions/1399648
复制相似问题