Como desabilitar el aspa de Windows

Post Reply
Loren
Posts: 458
Joined: Fri Feb 16, 2007 10:29 am
Location: Cadiz - España

Como desabilitar el aspa de Windows

Post by Loren »

Estimados compañeros:

En la "define Windows" que tengo en la pantalla principal de mi aplicación, necesito desactivar (desabilitar) el aspa roja típica de windows y evitar que los usuarios cierren la ventana de esta manera.

¿ Como se desabilita el aspa ?
Mil gracias.
LORENZO
User avatar
ADBLANCO
Posts: 299
Joined: Mon Oct 22, 2007 3:03 pm
Location: Valencia - Venezuela

Post by ADBLANCO »

DEFINE WINDOW oWnd FROM 0, 0 TO 35, 100;
TITLE ynomcia+' (Sistema de Garantías)' ;
NOSYSMENU;
ICON oIcon


TAMBIEN PUEDES UTILIZAR:
NOICONIZE
NOZOOM

PERO LO QUE PUEDES HACER ES DESAPARECER EL CERRAR Y DEJAR
ACTIVOS EL ICONIZE Y EL ZOOM
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Post by karinha »

Code: Select all

SHOWTASKBAR() //habilita
HIDETASKBAR() //desabilita
TIRA_X() // DESABILITA O X da janela
PISCA_EXE() // VAI PISCAR O SEU EXE NA BARRA

#pragma BEGINDUMP

#include "windows.h"
#include "shlobj.h"
#include "hbapi.h"
#include "math.h"
#include "hbvm.h"
#include "hbstack.h"
#include "hbapiitm.h"
#include "hbapigt.h"

HB_FUNC ( SHOWTASKBAR ) //Habilita o botao INICIAR
{
HWND hWnd = FindWindow("Shell_TrayWnd", "");

ShowWindow( hWnd, 1 );
}

HB_FUNC ( HIDETASKBAR ) //Desabilita o botao Iniciar
{
HWND hWnd = FindWindow("Shell_TrayWnd", "");

ShowWindow( hWnd, 0 );
}

HB_FUNC ( PISCA_EXE ) // VAI PISCAR O SEU EXE NA BARRA
{
HWND Handle = GetForegroundWindow();

FlashWindow(Handle,TRUE); // VAI PISCAR O SEU EXE NA BARRA

Sleep(300); // TEMPO DE ESPERA
}


HB_FUNC ( TIRA_X ) // DESABILITA O X da janela/ventana

{
HMENU MenuH = GetSystemMenu(GetForegroundWindow(),FALSE);

EnableMenuItem(MenuH,SC_CLOSE,MF_GRAYED);
}

#pragma ENDDUMP

João Santos - São Paulo - Brasil
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Post by karinha »

Code: Select all

    ACTIVATE WINDOW oWnd MAXIMIZED                                           ;
             ON INIT( TIRA_X() )                                             
João Santos - São Paulo - Brasil
User avatar
cuatecatl82
Posts: 614
Joined: Wed Mar 14, 2007 6:49 pm
Location: San Cristobal de las Casas, Chiapas México
Contact:

Re: Como desabilitar el aspa de Windows

Post by cuatecatl82 »

Saludos a todos..

Cómo se usaría para deshabilitar el botón cerrar en una ventana MDI o en un Diálogo, lo he intentado en el on init de ambos pero solo desabilita la ventana principal..

Necesito deshabilitarlo para que me permita ver el icono y el título en la barra, ya que NoSysmenu solo oculta el botón

Gracias.. :mrgreen:
Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Como desabilitar el aspa de Windows

Post by karinha »

En un Diálogo, usas @ ó Recursos del Workshop.exe the best?

En una Ventana MDI, és como está en arriba. Function TIRA_X()

http://fivewin.com.br/index.php?/topic/ ... ent-271940

Saludos
João Santos - São Paulo - Brasil
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Como desabilitar el aspa de Windows

Post by karinha »

Usando Recurso del Wrokshop.exe:

Mira System Menu:

https://i.imgur.com/qDMfeNT.png


Saludos.
João Santos - São Paulo - Brasil
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Como desabilitar el aspa de Windows

Post by karinha »

Usando @,

Code: Select all

#include "fivewin.ch"

FUNCTION Main()

   local oDlg, oFont
   local oGet1, oGet2, oGet3, oGet4
   local cVar1, cVar2, cVar3, cVar4
   local lActive := .f.
   
   cVar1 := 0
   cVar2 := 0
   cVar3 := 10
   cVar4 := 0

   DEFINE FONT oFont    NAME "Ms Sans Serif" SIZE 00, - 14 BOLD
   
   DEFINE DIALOG oDlg FROM 05,10 TO  25, 50             ;
      TITLE oemtoansi("desabilitar el aspa de Dialogo") ;
      FONT oFont                                        ;
      STYLE nOr( DS_MODALFRAME, WS_POPUP, WS_CAPTION)

   @10, 10 GET oGet1 VAR cVar1 OF odlg   picture "999,999,999" RIGHT ;
      SIZE 60,12 PIXEL UPDATE                                        ;
      VALID Eval ( { || IF (cVar1 = 0, (cVar2:=cVar2), .F. ),        ;
                           (cVar2,( cVar2:=cVar1*cVar3), oGET2:Refresh(), .T. ) } )

   @ 40,10 get oGet2 var cVar2 bitmap "..\bitmaps\on.bmp" action( msginfo( "Without Transparent" ) ) of oDlg pixel size 60,12

   @ 70,10 get oGet3 var cVar3 bitmap "..\bitmaps\chkyes.bmp"  ;
      action( msginfo( "With Adjust-Transparent" ) ) of oDlg pixel size 120,12

   @ 100,10 get oGet4 var cVar4 bitmap "..\bitmaps\chkyes.bmp" ;
      action( if( lActive,oGet3:disable(),oGet3:enable()),     ;
      lActive:= !lActive, oDlg:update() ) of oDlg pixel size 120,12
   
   oGet1:lBtnTransparent := .t.       // transparent button get oGet1
   
   oGet3:disable()
   oGet3:lBtnTransparent := .t.       // transparent button get oGet3
   oGet3:lAdjustBtn      := .t.       // Button Get Adjust Witdh oGet3
   oGet3:lDisColors      := .f.       // Deactive disable color
   oGet3:nClrTextDis     := CLR_WHITE // Color text disable status
   oGet3:nClrPaneDis     := CLR_BLUE  // Color Pane disable status
   
   oGet4:lAdjustBtn      := .t.
   
   activate dialog oDlg centered

   oFont:End()
 
return nil
 
João Santos - São Paulo - Brasil
Post Reply