FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Crear un xbrowse en un Dialogo maximizado
Posts: 467
Joined: Fri Dec 09, 2005 12:41 AM
Crear un xbrowse en un Dialogo maximizado
Posted: Wed Jul 29, 2009 11:15 PM

Buenas Tardes

Soy nuevo en el Uso del xBrowse que por lo que veo es bastante versatil, aqui con una nueva consulta facil de seguro....
Deseo crear una funcion MIvista(cAlias, aListaCampo) que recibe el Alias de una Tabla y un arreglo aListaCampo que contiene los nombres de los campos de una tabla "personal" algo asi ... aListaCampo:={"codigo","Nombre","sueldo"} , necesito que esta funcion realice los siguiente:
1. Abra una ventana maximizada (usando toda la pantalla) sin posibilidad de Minimizarla, Restaurar o cerrar salvo con un boton de cierre especifico
2. Dentro de esta ventana se debe mostrar usando lo maximo porsible de la ventana un xbrowse resultante de los campos indicados en aListaCampo

Lo Mejor para crear las ventanas con codigo y q no dependa de recursos..

Gracias por la ayuda por adelantado

Lubin

Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Crear un xbrowse en un Dialogo maximizado
Posted: Thu Jul 30, 2009 07:50 AM
Esto es una muestra utilizando customer.dbf en la \fwh\samples folder
Code (fw): Select all Collapse
#include 'fivewin.ch'
#include 'xbrowse.ch'

function Main()

   USE CUSTOMER SHARED

   Customer->( DoBrowse( { 'First', 'Last', 'City', 'State', 'Age', 'Salary' } ) )

return nil

static function DoBrowse( aCols )

   local oWnd, oBrw, oBar

   DEFINE WINDOW oWnd NOICONIZE NOZOOM NOSYSMENU

   DEFINE BUTTONBAR oBar SIZE 80,32 OF oWnd 2007
   DEFINE BUTTON OF oBar PROMPT 'CLOSE' ACTION oWnd:End()

   @ 0,0 XBROWSE oBrw OF oWnd COLUMNS aCols ALIAS ALIAS()
   oBrw:nStretchCol  := 2
   oBrw:CreateFromCode()
   oWnd:oClient      := oBrw

   ACTIVATE WINDOW oWnd MAXIMIZED

return nil
.
Regards



G. N. Rao.

Hyderabad, India
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Crear un xbrowse en un Dialogo maximizado
Posted: Thu Jul 30, 2009 02:00 PM

Hola lubin. También puedes hacerlo utilizando un dialogo (oDlg) .

Static oWnd
FUNCTION MAIN()
......
......
Return nil
//------------------------------
FUNCTION DlgxBrow()
LOCAL oDlg, oBrw

USE MIDBF

DEFINE DIALOG oDlg FROM 5,10 TO 20,60

@0.2,1 BUTTON "Salir" SIZE 40,12 OF oDlg ACTION oDlg:End()

// @2,1 LISTBOX oBrw FIELDS OF oDlg // TWBROWSE

oBrw := TXBrowse():New( oDlg )
oBrw:SetRDD()
oBrw:CreateFromCode()

ACTIVATE DIALOG oDlg CENTERED ;
ON INIT ( oDlg:SetSize(oWnd:nWidth(), oWnd:nHeight()), oDlg:Move(0,0) ,;
oBrw:SetSize(oDlg:nWidth()-30, oDlg:nHeight()-100), oBrw:Move(35,10) )
RETURN NIL

Saludos.

Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Crear un xbrowse en un Dialogo maximizado
Posted: Fri Jul 31, 2009 12:29 PM
Distinguido aqui otra forma
Code (fw): Select all Collapse
 Local    aCoor:= GetCoors( GetDesktopWindow() ) //De acuerdo a la resolución
 Local    nDWTop:= aCoor[1], nDWLeft:= aCoor[2], nDWBottom:= aCoor[3]-48, nDWRight:= aCoor[4]-7

  DEFINE DIALOG oDlg FROM nDWTop, nDWLeft TO nDWBottom, nDWRight

  *Tu browse
  
    ACTIVATE DIALOG oDlg ON INIT (oBrw:Move(33,0,( oDlg:nRight-oDlg:nLeft)-26,(oDlg:nBottom-oDlg:nTop)-75))

Los números los podes variar de acuerdo a tu necesidad

Saludos desde Santa Cruz de la Sierra

Adhemar
Saludos,



Adhemar C.

Continue the discussion