Search  
Friday, February 10, 2012 ..:: Forum ::.. Register  Login
 Forum Minimize
Pentru a putea posta mesaje trebuie să vă înregistraţi.
Notă: Mesajele cu conţinut jignitor sau ilegal (inclusiv cereri de soft piratat) nu sunt acceptate şi vor fi şterse imediat .

Pentru a primi raspunsuri rapide si corecte, scrieti in mesaj ce intentionati sa faceti, ce mesaj de eroare primiti, in ce context si in urma caror actiuni. De asemenea, mentionati versiunea de FoxPro in care lucrati!
Dacă nu specificați versiunea, se consideră VFP 9.0 SP2.

SearchForum Home
  Visual FoxPro  Cod, sintaxa si comenzi  INTREBARE...
 INTREBARE
 
 3/19/2010 3:10:26 PM
User is offlinegsl
24 posts


INTREBARE
 (N/A)

Salutare tuturor,

am un form afisat direct in _screen care ramane afisat pe tot parcursul sesiunii de lucru in aplicatie.
As vrea sa stiu cum pot verifica PROPRIETATEA VISIBLE - la acel form si anume , exemplific:

Acest form care reprezinta un calendar cu ceas pe el, este afisat la startarea aplicatiei simplu cu DO FORM ...
In cadrum meniului aplicatiei am o optiune gen - AFISEAZA CALENDAR ... care in PROC - are comanda standard DO FORM CALENDAR

Ideea e ca daca acest form calendar e deschis deja la apelul optiunii din meniu se vor deschide ”n” formuri unul peste altul , de cate ori se apeleaza optiunea. Acest lucru as incerca sa-l previn ceva gen : daca formul nu e afisat atunci executa DO FORM ....
Asta fara a folosi alte variabile care sa-mi dea eventual starea formului si pe care ar trebui sa le pun prin activate , init etc.

Am incercat cu CALENDAR.VISIBLE = .T. ... dar normal da eroare ca nu stie cine-i calendar ... in prealabil FORMUL CALENDAR SE NUMESTE FIZIC CALENDAR.SCX si numele formului - ca proprietate la fel l-am pus CALENDAR. Folosesc VFP 9.0

Astept sugestiile voastre.


Multumesc,
Gabi

 3/19/2010 3:29:44 PM
User is offlineDaniel Buduru
2141 posts
1st




Re: INTREBARE
 (N/A)
VFP tine formurile deschise intr-o colectie (_VFP.Forms) si intr-un array (_SCREEN.Forms).
Poti afla daca un form este deja deschis iterand prin colectie.
Trebuie insa ca formul sa poate fi identificat dupa nume (form.name, nu numele scx-ului din care se lanseaza) sau caption.
Poti folosi asa ceva:

llFormExist=.f.
FOR EACH loForm IN _VFP.Forms FOXOBJECT
    if loForm.Caption='Calendar' or loForm.name='frmCalendar'
       llFormExist=.t.
       loForm.Visible=.t.
       exit
   endif
NEXT
if !llFormExist
   DO FORM calendar.scx
endif

Daniel Buduru
 3/19/2010 4:52:23 PM
User is offlinegsl
24 posts


Re: INTREBARE
 (N/A)
Multumesc mult de informatie. O s-o implementez.

Toate cele bune !
  Visual FoxPro  Cod, sintaxa si comenzi  INTREBARE...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2010 Profox   Terms Of Use  Privacy Statement