| |

ActiveX-ProgrammierungRe: eigenes Kombinationsfeld | |  | Autor: Mirek | Datum: 14.04.05 17:57 |
| Hi, anbei ein Quellcode für die Lösung....
in ein Modul
------------------
Option Explicit
Public Declare Function GetCursorPos Lib "user32" _
(lpPoint As POINTAPI) As Long
Public Declare Function GetWindowRect Lib "user32" ( _
ByVal hWnd As Long, _
lpRect As RECT) As Long
Public Declare Function ClientToScreen Lib "user32" ( _
ByVal hWnd As Long, _
lpPoint As POINTAPI) As Long
Private Declare Function SetWindowPos Lib "user32" _
(ByVal hWnd As Long, _
ByVal hWndInsertAfter As Long, ByVal X As Long, _
ByVal Y As Long, ByVal cx As Long, _
ByVal cy As Long, ByVal wFlags As Long) As Long
Private Const HWND_TOPMOST = -1
Private Const HWND_NOTOPMOST = -2
Private Const SWP_NOMOVE = &H2
Private Const SWP_NOSIZE = &H1
Public Type POINTAPI
X As Long
Y As Long
End Type
Public Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Public Sub SetFormPos(ByVal pObjekt As Object, pForm As Form)
On Error GoTo Error
Dim P As POINTAPI
Dim r As RECT
GetWindowRect pObjekt.hWnd, r
ClientToScreen pObjekt.hWnd, P
pForm.form_open P.X * Screen.TwipsPerPixelX - 30, (P.Y + (r.Bottom - r.Top + 3)) * Screen.TwipsPerPixelY
Ex:
Exit Sub
Error:
Resume Ex
End Sub
' Fenster in den Vordergrund setzen
Public Sub FormOnTop(ByVal hWnd As Long, _
ByVal OnTop As Boolean)
If OnTop Then
' immer im Vordergrund
SetWindowPos hWnd, HWND_TOPMOST, 0, 0, 0, 0, _
SWP_NOMOVE Or SWP_NOSIZE
Else
' normal
SetWindowPos hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, _
SWP_NOMOVE Or SWP_NOSIZE
End If
End Sub
ins Usercontrol:
-----------------------
SetFormPos Textbox, Form
Form.show...
in die zu öffnende Form:
---------------------------------
Public Sub form_open(Left As Long, Top As Long)
On Error GoTo Error
Me.Left = Left
Me.Top = Top
Ex:
Exit Sub
Error:
Resume Ex
End Sub
und dann mußt du das geöffnete Fenster noch OnTop setzen und einige
Feinabeiten integrieren...
PS: ich hoffe das ich helfen konnte!!!1
mfg
Mirek |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
Neu! sevCommand 4.0 
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|