Avatar billede nameless Nybegynder
19. januar 2004 - 14:03 Der er 4 kommentarer og
1 løsning

Resize form

Har fundet dette eksempel som virker når man skal flytte formen:


Sættes i en mousedown eller mousemove på formen:
  If Button = 1 Then
    Call ReleaseCapture
    Call SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&)
  End If



Module:
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Declare Sub ReleaseCapture Lib "user32" ()

Public Const WM_NCLBUTTONDOWN = &HA1
Public Const HTCAPTION = 2


Findes der noget lign der kan bruges til at resize ens form istedet for at flytte den?
Avatar billede martin_moth Mester
19. januar 2004 - 14:18 #1
Jeg forstår ikke hvad du vil opnå...

Prøv at forklar, hvad koden skal kunne gøre
Avatar billede nameless Nybegynder
19. januar 2004 - 16:52 #2
Sorry min dårlige formulering :)

Altså den skal gøre følgene at når man holder musen nede på et billede, der er et sted på formen, så skal formen resize, indtil man giver slip. Altså ligesom den resize, der er nede i hjørnet, på en browser, bare denne skal være på et billede.

Overstående kan gører nøjagtig det samme, bare den flytter hele formen, istedet for resizer den
Avatar billede minijensen1 Nybegynder
19. januar 2004 - 20:23 #3
If Button = 1 Then
  Me.Height = 2400 ' den højde formen skal have
  Me.Width = 3000 ' den bredde formen skal have
End If

Sættes samme sted, og virker ligesom dit kun når man trykker på musen
Avatar billede venne Nybegynder
19. januar 2004 - 21:12 #4
Eksemplet antager at dit billede ligger i en PictureBox der hedder Picture1 - det kan du bare ændre.

I formen tilføjes:

  Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 1 Then
      Call ReleaseCapture
      Call SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, HTBOTTOMRIGHT, 0&)
    End If
  End Sub

I modulet tilføjes:

  Public Const HTBOTTOMRIGHT = 17


For at få billedet til at følge med formen kan du gøre noget i denne retning:

Private Sub Form_Resize()
  Picture1.Move Me.ScaleWidth - Picture1.Width, Me.ScaleHeight - Picture1.Height
End Sub
Avatar billede nameless Nybegynder
20. januar 2004 - 08:42 #5
perfekt :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester