Page 1 of 1

Boton cerrar en dialogo.

PostPosted: Tue Jul 06, 2010 11:35 pm
by Simon
como se puede colocar en un dialogo en vez de la x para cerar, el ok que sale en msginfo.

Gracias.

Re: Boton cerrar en dialogo.

PostPosted: Wed Jul 07, 2010 12:03 pm
by Antonio Linares
Simón,

Code: Select all  Expand view
// FiveWin for Pocket PC - Using DialogBoxes

#include "FWCE.ch"

//----------------------------------------------------------------------------//

function Main()

   local oWnd

   DEFINE WINDOW oWnd TITLE "OK-Button" ;
      MENU BuildMenu()

   ACTIVATE WINDOW oWnd ;
      ON CLICK MsgInfo( "Click!" )
   
return nil

//----------------------------------------------------------------------------//

function BuildMenu()

   local oMenu
   
   DEFINE MENU oMenu RESOURCE 102
   
   REDEFINE MENUITEM ID 100 OF oMenu ACTION ShowDialog()

   REDEFINE MENUITEM ID 110 OF oMenu ACTION MsgAlert( "FWCE power!" )
   
return oMenu

//----------------------------------------------------------------------------//

function ShowDialog()

   local oDlg
   
   DEFINE DIALOG oDlg RESOURCE "test"
   
   REDEFINE BUTTON ID 1 OF oDlg ACTION oDlg:End()  // IDOK == 1
   
   ACTIVATE DIALOG oDlg CENTERED ;
     ON INIT SetOKButton( oDlg:hWnd )
     
   if oDlg:nResult == 1
      Msginfo( "Top-right ok button was pressed" )
   endif    
   
return nil  

//----------------------------------------------------------------------------//

#pragma BEGINDUMP

#include <hbapi.h>
#include <windows.h>
#include <aygshell.h>

HB_FUNC( SETOKBUTTON )
{
   SHINITDLGINFO shidi;

   shidi.dwMask  = SHIDIM_FLAGS;
   shidi.hDlg    = ( HWND ) hb_parnl( 1 );
   shidi.dwFlags = SHIDIF_DONEBUTTON | SHIDIF_SIZEDLGFULLSCREEN;

   SHInitDialog( &shidi );
}  

#pragma ENDDUMP

//----------------------------------------------------------------------------//
 

Re: Boton cerrar en dialogo.

PostPosted: Wed Jul 07, 2010 3:43 pm
by Simon
Antonio Gracias, pero ese ejemplo muestra el dialogo maximizado como si fuera una ventana, yo lo necesito mas pequeño y no se como hacerlo.

Saludos.

Re: Boton cerrar en dialogo.

PostPosted: Wed Jul 07, 2010 6:00 pm
by Antonio Linares
Simón,

Una posible solución sería usar un diálogo con el estilo más básico (sin titulo, ni botones, etc) y dibujar en él lo que necesites ó quieras mostrar.

De todas formas, tu objetivo es solo quitar la "x" ?

Re: Boton cerrar en dialogo.

PostPosted: Thu Jul 08, 2010 4:03 pm
by Simon
No quiero quitar la x quiero que salga el boton ok como en el msginfo().

Re: Boton cerrar en dialogo.

PostPosted: Fri Jul 09, 2010 5:26 am
by Antonio Linares
Simón,

En el ejemplo anterior que te he mostrado, cambia esta línea:

shidi.dwFlags = SHIDIF_DONEBUTTON | SHIDIF_SIZEDLGFULLSCREEN;

así:

shidi.dwFlags = SHIDIF_DONEBUTTON;