Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Uticaj jedne forme na drugu!

[es] :: Visual Basic 6 :: Uticaj jedne forme na drugu!

[ Pregleda: 5038 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mdax
Dalibor Markovic
Srbija, Kraljevo

Član broj: 14211
Poruke: 152
*.ptt.yu.



+17 Profil

icon Uticaj jedne forme na drugu!25.05.2005. u 12:10 - pre 229 meseci
Kako da napravim da pomeranje glavne forme utiče na pomeranje druge forme, odnosno kako da ih povežem kada nema EVENT.

Ovako Druga forma je u glavnoj formi. Klikom na glavnu formu i njenim pomeranjem hoću da se i druga forma pomera kao da je sastavni deo glavne forme.

Svaka pomoć bi mi dobro došla! HVALA!
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: Uticaj jedne forme na drugu!25.05.2005. u 12:24 - pre 229 meseci
moras da subclassusjes glavnu formu i da cekas WM_MOVE poruku...
 
Odgovor na temu

mdax
Dalibor Markovic
Srbija, Kraljevo

Član broj: 14211
Poruke: 152
*.ptt.yu.



+17 Profil

icon Re: Uticaj jedne forme na drugu!28.05.2005. u 22:34 - pre 229 meseci
Ali koko se to radi!
Imaš li bar neki primer.
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Uticaj jedne forme na drugu!28.05.2005. u 23:10 - pre 229 meseci
Možeš to da uradiš i drugačije.Recimo sa Timer kontrolom.Probaj ovako, napravi dve forme (Form1 i Form2), na glavnu formu stavi Timer kontrolu i na toj formi stavi sledeći kod
Code:
Dim Levo1 As Long
Dim Gore1 As Long
Dim Levo2 As Long
Dim Gore2 As Long
Dim LevoR As Long
Dim GoreR As Long
Private Sub Form_Load()
Form2.Show
Timer1.Interval = 1
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
If LevoR = 0 And GoreR = 0 Then
Levo1 = Form1.Left
LevoR = Levo1
Gore1 = Form1.Top
GoreR = Gore1
Levo2 = Form2.Left
Gore2 = Form2.Top
End If
Levo1 = Form1.Left
Gore1 = Form1.Top
If LevoR <> Levo1 Or GoreR <> Gore1 Then
Form2.Move Form2.Left + (Levo1 - LevoR), Form2.Top + (Gore1 - GoreR)
LevoR = Levo1
GoreR = Gore1
End If
End Sub

Vidi da li ti završava posao.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

GMC
Selo Veselo

Član broj: 11492
Poruke: 338
*.ppp-01.sa.lol.ba.



Profil

icon Re: Uticaj jedne forme na drugu!29.05.2005. u 15:31 - pre 229 meseci
imam i ja jedno pitanje a mislim da mozeu ovu temu:


kako da u jednu glavnu formu ubacim par drugih formi , ali tako da se nemogu "odvuci" van te glavne forme nage da djeluju kao njen dio , da te nove forme mogu pomjerat unutar ove glavne ali ne i van nje, i plus da radi ovo sto je pitao Marko_L , da se pomice zajedno sa glavnom formom (ali doboro ovo za pomicanje ste objasnili)

Hvala
Ajd Zdravo
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Uticaj jedne forme na drugu!29.05.2005. u 17:04 - pre 229 meseci
Ubaci u projekat MDI form, i svim formama koje želiš da staviš u nju podesi svojstvo MDIChild na True.A što se tiče pomeranja, u tom slučaju ti ne treba ovaj kod koji sam postovao iznad jer će se CHILD forma svakako pomerati zajedno sa MDI formom.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

GMC
Selo Veselo

Član broj: 11492
Poruke: 338
217.75.206.*



Profil

icon Re: Uticaj jedne forme na drugu!30.05.2005. u 14:57 - pre 229 meseci
Hvala!

A jeli mi mozete jos reci kako da ogranicim kretanje ovoe child forme, znaci da joj zabranim da je korisnik misem dovuce npr. na odredjenu daljinu od lijeve ivice MDIforme? Jeli to moguce uraditi? (Ovo pitam jer planiram da smjestim uz tu ljevu ivicu listu sa svim otvorenim formama a ne zelim da se ove child forme mogu dovuci preko te liste...)


Ajd Zdravo
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Uticaj jedne forme na drugu!30.05.2005. u 16:16 - pre 229 meseci
Hmmm...ne znam na šta misliš, pošto CHILD forma i ne može da ode dalje od leve ivice MDI forme, u stvari može, ali na MDI formi se automatski pojavljuje scroll i ako skroluješ videćeš da jeleva ivica child forme i dalje na levoj ivici MDI forme.No, ukoliko ne želiš da se ta child forma pomera, možeš da joj staviš svojstvo Moveable na False.A što se tiče toga da druge forme ne mogu da je prekriju, pretraži malo forum, bilo je reči o tome kako da se forma postavi da bude always on top.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

GMC
Selo Veselo

Član broj: 11492
Poruke: 338
217.75.206.*



Profil

icon Re: Uticaj jedne forme na drugu!30.05.2005. u 16:38 - pre 229 meseci
Pogresno si me shvatio,
Mislio sam kako da zabranim da se child forma pomjeri na odredjeni dio unutar MDIforme, recimo par centimetara od ljeve ivice(prema sredini forme) , ali nije bitno sada jer sam rijesio taj problem uz pomoc ovog movable, i border 0 , tako da sam dobio uglavnom ono sto mi je trebalo

Hvala u svkaom slucaju!
Ajd Zdravo
 
Odgovor na temu

mdax
Dalibor Markovic
Srbija, Kraljevo

Član broj: 14211
Poruke: 152
*.ptt.yu.



+17 Profil

icon Re: Uticaj jedne forme na drugu!30.05.2005. u 20:56 - pre 229 meseci
Hvala, ali moželi preko API-ja?
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: Uticaj jedne forme na drugu!30.05.2005. u 21:25 - pre 229 meseci
APi za postavljanje jedne forme na drugu?
korisiti SetParent (za tacnu deklaraciju pogledaj u API-Guideu):
Code:

 Private Sub Form_Load()
  SetParent Me.hWnd, Form1.hWnd
 End Sub


ovo ce ti postaviti Form2 na Form1 (bez MDI formi)

 
Odgovor na temu

GMC
Selo Veselo

Član broj: 11492
Poruke: 338
217.75.206.*



Profil

icon Re: Uticaj jedne forme na drugu!30.05.2005. u 21:27 - pre 229 meseci
Ja se stvarno izvinjavam ali opet imam problem, slican onome sto sam mislio da sam rijesio?
Dakle sad sam stavio coolbar na vrh MDIforme i pored ostalog imam dva - tri child prozora koji imaju movable = true , ali kad pokusam da maknem te forme u vrh ekrana one se "zavuku" ispod toolbara a to mi ne odgovara. Dali je moguce to rijesiti ili cu morati i tu napraviti novu formu pa je oznacit kao staticnu pa na nju stavit coolbar?

Hvala!
Ajd Zdravo
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Uticaj jedne forme na drugu!30.05.2005. u 22:22 - pre 229 meseci
@mdax
Pomeranje dve forma uz pomoć API-ja.

U modul
Code:
Option Explicit

Public OldWindowProc As Long
Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, _
ByVal msg As Long, ByVal wParam As Long, lParam As WINDOWPOS) As Long
Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Const GWL_WNDPROC = (-4)

Type WINDOWPOS
    hwnd As Long
    hWndInsertAfter As Long
    x As Long
    y As Long
    cx As Long
    cy As Long
    flags As Long
End Type
' Process messages.
Public Function NewWindowProc(ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, lParam As WINDOWPOS) As Long
Const WM_NCDESTROY = &H82
Const WM_WINDOWPOSCHANGING = &H46

    ' If we're being destroyed,
    ' restore the original WindowProc.
    If msg = WM_NCDESTROY Then
        SetWindowLong _
            hwnd, GWL_WNDPROC, _
            OldWindowProc
    Else
        ' See if the window is moving.
        If msg = WM_WINDOWPOSCHANGING Then
            ' The window is moving. Keep the others with it.
            Form2.Move Form1.Left + Form1.Width, Form1.Top - 360
        End If
    End If

    ' Continue normal processing. VERY IMPORTANT!
    NewWindowProc = CallWindowProc( _
        OldWindowProc, hwnd, msg, wParam, _
        lParam)
End Function


Na formi

Code:
Private Sub Form_Load()
Form2.Show
OldWindowProc = SetWindowLong( _
     hwnd, GWL_WNDPROC, _
     AddressOf NewWindowProc)
End Sub



-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

mdax
Dalibor Markovic
Srbija, Kraljevo

Član broj: 14211
Poruke: 152
*.ptt.yu.



+17 Profil

icon Re: Uticaj jedne forme na drugu!01.06.2005. u 00:06 - pre 229 meseci
Hvala, pokušaću to.
 
Odgovor na temu

[es] :: Visual Basic 6 :: Uticaj jedne forme na drugu!

[ Pregleda: 5038 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.