como impedir abrir una window 2 veces

como impedir abrir una window 2 veces

Postby lafug » Tue Sep 18, 2012 9:54 pm

Como hago para controlar cuando abro una ventana desde un menú, ésta no se vuelva abrir?, ya que esto hace que se vayan "acumulando en la barra de tareas"

Muchas gracias de antemano por sus comentarios :D
Luis Alfonso Fuentes Guerrero
FWH 11.06 xHarbour 1.2.1 BCC55 WorkShop
User avatar
lafug
 
Posts: 185
Joined: Thu Nov 17, 2005 12:48 am
Location: Santiago, Chile

Re: como impedir abrir una window 2 veces

Postby horacio » Wed Sep 19, 2012 12:01 am

Si lo haces desde un menú, deshabilitando esa opción y si es desde un button lo mismo

Saludos
horacio
 
Posts: 1358
Joined: Wed Jun 21, 2006 12:39 am
Location: Capital Federal Argentina

Re: como impedir abrir una window 2 veces

Postby FranciscoA » Wed Sep 19, 2012 1:00 am

Lafug, aqui tienes un pequeño ejemplo:
//----------------------------------------------------------------------------//
Function BuildMenu()
local oMenu, oItem1

MENU oMenu 2007
MENUITEM oItem1 PROMPT "&Fichero"
MENU
MENUITEM "&Mi ventana" ACTION Miventana(oItem1)
MENUITEM "&Salir..." ACTION oWnd:End() MESSAGE "Finalizar esta sesion"
ENDMENU
ENDMENU
//------------------------------
Function MiVentana(oItem1)
-----
oItem1:Disable()
.....
ACTIVATE WINDOW oMiVentana

VALID ( oItem1:Enable() , .t. )
Return nil

Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2110
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: como impedir abrir una window 2 veces

Postby compubrion » Wed Sep 19, 2012 1:48 am

Saludos !

Otra forma, para no abrir mas de una vez
declara la variable que identifica la venta como static y la controlas asi
Code: Select all  Expand view

STATIC oWndChild
*--
FUCNTION GRUPOS()
*--
LOCAL A,B,C,-......

IF oWndChild == NIL
   Define window oWndChild bla,bla
   Activate Widnow oWndChild;
   Valid( oWndChild := NIL, .T. )
ELSE
    oWndChild:SetFocus()
ENDIF
 
Harbour / Bcc / MinGW / Fwh 13.9
User avatar
compubrion
 
Posts: 130
Joined: Thu Mar 08, 2007 6:12 pm
Location: Miranda - Venezuela

Re: como impedir abrir una window 2 veces

Postby karinha » Wed Sep 19, 2012 12:22 pm

Code: Select all  Expand view

#Include "Fivewin.Ch"

Static oWnd, lAbertura := .F.

Function Bmp_Rand( cWidth, cHeight )
 
    // Para Impedir Uma 2a Abertura de Janela!!!
    IF lAbertura = .F.

        lAbertura := .T.

     ELSE

        MsgInfo( OemToAnsi( "Esta Janela J  Est  em Uso..." +CRLF+ ;
                            "Verifique Rodap‚ do  Windows." +CRLF+ ;
                            "Ou Minimize o Programa...    " +CRLF+ ;
                            "Pois Ela  Pode Estar Por Tr s" +CRLF+ ;
                            "do Menu Principal. Verifique!"),      ;
                            "Verifique, Por Favor!" )

        RETURN NIL

    ENDIF

    DEFINE WINDOW oWnd            ;
           FROM 6.70, 5 TO 34, 95 ;
           BRUSH oBrush           ;
           ICON  oIco             ;
           NOZOOM                 ;
           NOSYSMENU              ;
           BORDER SINGLE          ;

    // ....

    ACTIVATE WINDOW OWND ;
             VALID( PorFalso( @lAbertura ) )

RETURN NIL

FUNCTION PorFalso( lVariavel )

   lVariavel := .F.

RETURN( .T. )
 


João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7214
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: como impedir abrir una window 2 veces

Postby MarioG » Wed Sep 19, 2012 12:41 pm

Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
User avatar
MarioG
 
Posts: 1380
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

Re: como impedir abrir una window 2 veces

Postby lafug » Wed Sep 19, 2012 9:41 pm

Gracias a todos! por sus respuestas, me quedé con la solución de compubrion

saludos y gracias de nuevo!
Luis Alfonso Fuentes Guerrero
FWH 11.06 xHarbour 1.2.1 BCC55 WorkShop
User avatar
lafug
 
Posts: 185
Joined: Thu Nov 17, 2005 12:48 am
Location: Santiago, Chile


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 78 guests