forms
Hi Miguel
To the 800-600 question: You must either compact your information to fit in
800-600 (use tabstrips, multipages, whatever), or write code that
resize/reposition everything to fit into the user's full screen. But why not
use a 800-600 form in all screen resolutions ? What you are doing is
hijacking the user's computer screen, no matter how big it is, you hide the
other things I am working on. There is a reason to have a high screen
resolution; to see many things at the same time. I would probably
ctrl-alt-delete your application away if you displayed a 1280-768 form
containing 800-600 worth of information. So don't do this -my 0.02 only.
HTH. Best wishes Harald
"Liedson31" skrev i melding
...
hi again....
iīve already try this one but.....no replys...so here it is again:
i tried some things to make this works but the most close i got was this
one(Vasant gives me the code). But i have 2 questions for this one:
- it works perfectly in 1024x768!but if i change the screen resolution to
1280x768 the form shows in fullscreen but isnīt centered,it goes to the
left
and the right is fill with the backcolor.i already have the form in the
StarupPosition = CenterScreen.Have i any way to put the form centered?
- the second one is more dificult(i suppose)...and if i change the
resolution to 800x600, the user canīt even see all the objects in the
form..
can anyone help me please
thanks in advance
Miguel
the code i have:
Private Declare Function FindWindow& _
Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName$, ByVal lpWindowName$)
Private Declare Function SetWindowLong& _
Lib "user32" Alias "SetWindowLongA" _
(ByVal hWnd&, ByVal nIndex&, ByVal dwNewLong&)
Private Declare Function DrawMenuBar& _
Lib "user32" (ByVal hWnd&)
Private Const MF_BYPOSITION As Long = &H400
Private Declare Function GetSystemMenu Lib "user32" _
(ByVal hWnd As Long, ByVal bRevert As Long) As Long
Private Declare Function DeleteMenu Lib "user32" _
(ByVal hMenu As Long, ByVal nPosition As Long, _
ByVal wFlags As Long) As Long
Private Declare Function FindWindowA Lib "user32" _
(ByVal lpClassName As String, ByVal lpWindowName _
As String) As Long
Application.DisplayFullScreen = True
With Application
Top = .Top
Height = .Height
Left = .Left
Width = .Width
End With
Dim hWnd As Long
hWnd = FindWindow(vbNullString, Me.Caption)
SetWindowLong hWnd, -16, &H84080080
DrawMenuBar hWnd
Dim lHandle As Long, lCount As Long
On Error Resume Next
lHandle = FindWindowA(vbNullString, Me.Caption)
If lHandle < 0 Then
For lCount = 1 To 6
DeleteMenu GetSystemMenu(lHandle, False), 0, MF_BYPOSITION
Next lCount
End If
|