Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: API - okna
anonim




Typ: Nie zarejestrowany
API - okna

Jakie są funkcje API do pobierania uchwytu do okna, i sprawdzania pozycji tego okna?

Jestem BARDZO początkujący (sory za wielkie litery ).
<chudy>Zmieniłem nazwę tematu ponieważ samo "API" mało mówiło.</chudy>

[Post edytowany dnia 04-09-2004 21:26 przez Chudy]

02-09-2004 19:30
  
bisiek




Typ: neutral
Postów: 487
Zarejestrowany: Jul 2003

Uchwyt okna (obiektu) to nazwaOkna.hwnd

Potrzebne deklaracje:

Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
End Type

Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long



Zadeklaruj jedną zmienną jako rect i podawaj ją jako drugi parametr funkcji np.

dim r as rect

GetWindowRect form1.hwnd, r


W r znajdziesz:

r.top - położenie okna od góry ekranu
r.left - położenie okna od lewej strony ekranu
r.bottom - położenie okna od dołu ekranu
r.right - położenie okna od prawej strony ekranu


_____________________________________________
www.mob.abc.pl - moja strona o VB

02-09-2004 21:02
Pokaż profil bisiek  Wyślij email do bisiek   Odwiedź stronę bisiek       3380672
Usercontrol
mr. Tom



Typ: neutral
Postów: 191
Zarejestrowany: Oct 2003

polecam program API-GUIDE dla począdkujądych i zaawansowanych, jest to super program z przykładami do każdej funkcji. Najnowsza jego wersja ma opisanych 940 funkcji, ale niestety nie po polsku...Można go ściągnąć ze strony www.allapi.net

[Post edytowany dnia 03-09-2004 21:12 przez Usercontrol]

03-09-2004 21:11
Pokaż profil Usercontrol  Wyślij email do Usercontrol   Odwiedź stronę Usercontrol       1518548
anonim




Typ: Nie zarejestrowany

Nie chcę sprawdzać pozycji okna mojego programu
potrzebuje pozycję okna innego programu (A dokładniej przycisku w tym programie (Aby wiedzieć, gdzie kliknąć)).

04-09-2004 14:38
  
Chudy
[TLHW]Wiktor



Typ: moderator
Postów: 574
Zarejestrowany: Aug 2002

No więc oto przykład jak uzyskać współrzędne pasku start:
Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
End Type

Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Sub Form_Load()
    Okno = FindWindow("Shell_TrayWnd", vbNullString)
    Dim R As RECT
   
    GetWindowRect Okno, R
   
    AutoRedraw = True
    Print "X: " & R.Left
    Print "Y: " & R.Top
    Print "Szerokość: " & R.Right - R.Left
    Print "Wysokość: " & R.Bottom - R.Top
   

End Sub



_____________________________________________
Projekt "Thunder Cannons" nadchodzi...

04-09-2004 16:33
Pokaż profil Chudy  Wyślij email do Chudy   Odwiedź stronę Chudy       1220895
bisiek




Typ: neutral
Postów: 487
Zarejestrowany: Jul 2003

W takim razie musisz zamaist hwnd form1 podać hwnd przycisku.


_____________________________________________
www.mob.abc.pl - moja strona o VB

05-09-2004 12:25
Pokaż profil bisiek  Wyślij email do bisiek   Odwiedź stronę bisiek       3380672
Wszystkich odpowiedzi: 5 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1