Office中国论坛/Access中国论坛

标题: [求助] 窗体分辩率的问题? 急!!!! [打印本页]

作者: XWQ2000    时间: 2005-12-26 17:49
标题: [求助] 窗体分辩率的问题? 急!!!!
我设计了一个软件它需要在屏幕1280×720分辩率下才能运行,当屏幕为800×600分辩率时,如何软件自动提示和自动把屏幕调整到1280×720分辩率?

[此贴子已经被作者于2005-12-26 10:13:46编辑过]


作者: 一点通    时间: 2005-12-26 18:21
改变系统分辩率的例子还没有见过,但你可以尝试软件适应系统的分辩率,方法如下


根据屏幕分辨率自动调整窗体大小:


Option Compare Database


Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long


Private Const SM_CXSCREEN = 0


Private Const SM_CYSCREEN = 1


Private Sub Form_Open(Cancel As Integer)


Dim x As Long, y As Long, a As Long, b As Long


x = GetSystemMetrics(SM_CXSCREEN)


y = GetSystemMetrics(SM_CYSCREEN)


a = 10000 / 800 * x


b = 7000 / 600 * y


DoCmd.MoveSize 1134, 1134, a, b


End Sub


获得系统的屏幕区域大小


Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long


Private Const SM_CXSCREEN = 0


Private Const SM_CYSCREEN = 1


Private Sub Command0_Click()


Dim x As Long, y As Long


x = GetSystemMetrics(SM_CXSCREEN)


y = GetSystemMetrics(SM_CYSCREEN)


MsgBox x & "  " & y


End Sub


让控件自适应屏幕分辨率2





'这个函数可以使你开发的程序适应各种分辨率,这是我见过的最完美的解决方案!强列推荐


''如果你是在1024*768的分辨率下写的程序,就把下面那句改为


Const DesignSize = 1024,如果是800*600分


'辨率下写的,就改为Const DesignSize = 800


'用法:把下面所有的代码放在一个模块里,在需要适应分辨率的窗体的Load事


'件里加入Call FormResiz_OnOpen(Me)


'


'Const DesignSize = 1024


Const DesignSize = 800


'☆★☆★☆★☆★☆★☆★☆★☆★☆★


'API宣言


Declare Function GetDesktopWindow Lib "User32" () As Long


Declare Function GetWindowRect Lib "User32" (ByVal hWnd As Long, rectangle As RECT) As Long


'Type宣言


Type RECT


x1 As Long


y1 As Long


x2 As Long


<FONT face=
作者: XWQ2000    时间: 2005-12-26 18:49
首先先谢谢一点通的回复,你所提出的我手头上也有,但是自适应不太适应。
作者: hi-wzj    时间: 2005-12-26 19:17
编程时尽量是以低配置为准。因为低分辩率的屏幕不一定能适应高分辩率的屏幕。



该例子,进入后更改为指定的分辨率,退出后还原回来。[attach]14945[/attach]

作者: yttzm    时间: 2005-12-28 05:21
版主,怎么用啊?
作者: hwhan525    时间: 2006-5-18 04:59
谢谢
作者: hwhan525    时间: 2006-5-18 04:59
dddddddddddddddddddddddd
作者: zx994398    时间: 2006-6-24 00:06
不会用,怎么办?能不能劳烦做个简单的例子?

[此贴子已经被作者于2006-6-23 16:36:49编辑过]


作者: 一点通    时间: 2006-6-24 02:30
以下是引用zx994398在2006-6-23 16:06:00的发言:
不会用,怎么办?能不能劳烦做个简单的例子?

4楼不是有例子吗?
作者: zx994398    时间: 2006-6-24 16:32
收到,谢谢!
作者: a30088    时间: 2009-11-4 11:24
收到,谢谢!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3