"Form.Borderstyle=0 (Kein)" - trotzdem bewegbar machen?

G3kai

Grünschnabel
Hi


Habe ein (kleines) Problem, und zwar:

Habe ich eine Form: BorderStyle ist 0 (Kein), d.h. weder "Maximieren" noch "Schließen" oben im Fenster usw.

Mit Border Style 0 ist die Form auch nicht bewegbar, das möchte ich aber ändern:
Am oberen Teil der Form ist ein Image, mit diesem will ich das erreichen...

Hier ein Bild der Form:
http://img357.imageshack.us/my.php?image=neuebitmapni6.png

"Der obere Teil einer normalen Form (Wie nennt man das eig.?!) " :
http://img171.imageshack.us/my.php?image=nixfocusij4.png


Das obere Image soll also am Ende so wirken wie der obere Teil einer normalen Form bzw eines normalen Fensters, man soll also per MouseDown die Form bewegen können und per MouseUp soll die Form dann auf ihrer Position bleiben.


Wie mach ich das?
(Schon n' bisschen rumprobiert, es klappt aber nicht)



MfG
G3kai
 
Hallo, versuch´s mal so:
Code:
Private Declare Sub ReleaseCapture Lib "User32" ()

Private Declare Function SendMessage Lib "User32" _
  Alias "SendMessageA" ( _
  ByVal hwnd As Long, _
  ByVal wMsg As Long, _
  ByVal wParam As Long, _
  lParam As Any) As Long
 
Private Const WM_NCLBUTTONDOWN = &HA1
Private Const HTCAPTION = 2

Private Sub Picture1_MouseDown(Button As Integer, _
  Shift As Integer, X As Single, Y As Single)
  Dim lResult As Long
  If Button = 1 Then
    Call ReleaseCapture
    lResult = SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, _
      HTCAPTION, 0&)
  End If
End Sub
 
Hallo, versuch´s mal so:
Code:
Private Declare Sub ReleaseCapture Lib "User32" ()

Private Declare Function SendMessage Lib "User32" _
  Alias "SendMessageA" ( _
  ByVal hwnd As Long, _
  ByVal wMsg As Long, _
  ByVal wParam As Long, _
  lParam As Any) As Long
 
Private Const WM_NCLBUTTONDOWN = &HA1
Private Const HTCAPTION = 2

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

Ah, so klappts!
Danke dir
 

Neue Beiträge

Zurück