Browse con Dialog

Browse con Dialog

Postby Garbi » Fri Mar 31, 2006 3:19 pm

Al maximizar un dialog que contiene un browse se puede redimensionar automaticamente o de alguna manera el Browse para que me ocupe todo el dialog.

Graicas
Garbi
 
Posts: 340
Joined: Wed Nov 02, 2005 3:28 pm

Postby Garbi » Fri Mar 31, 2006 4:14 pm

o como sabes si un dialog se ha maximizado para cambian de resoure
Garbi
 
Posts: 340
Joined: Wed Nov 02, 2005 3:28 pm

Postby Antonio Linares » Fri Mar 31, 2006 4:41 pm

Garbi,

oDlg:SetClient( oBrowse )
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Garbi » Fri Mar 31, 2006 5:00 pm

Me da el siguiente error:
Error description: Error Objects/6 No Exp. Method: TDIALOG:SETCLIENT

Codigo fuente:
DEFINE DIALOG oDlg RESOURCE "HOJA" TITLE IIF( lNuevo,"AGREGAR" ,;
oemtoansi("MODIFICACION / CONSULTA Presupuesto n§ ")+alltrim(transform(vnumero,"999,999")) )

REDEFINE GET gvfecha Var vfecha ID 102 OF oDlg
REDEFINE say gvnombre Var vnombre ID 114 OF oDlg
REDEFINE say gvref Var vref ID 116 OF oDlg


REDEFINE BROWSE oBrwt ID 103 of oDlg

oDlg:SetClient( oBrwt )

oBrwT:bKeyChar = { | nKey, nFlags | (lineas(nkey),oBrwt:refresh(),ftotal(),gvtotal:refresh())}

ADD COLUMN to oBrwt DATA (ctemporal)->cantidad HEADER "Ctd" size 40 picture "99,999"
ADD COLUMN to oBrwt DATA (ctemporal)->concepto HEADER "Articulo" size 500
ADD COLUMN to oBrwt DATA (ctemporal)->unitario HEADER "Precio" size 100 Picture "9,999,999.99" RIGHT
ADD COLUMN to oBrwt DATA (ctemporal)->importe HEADER "Total" size 100 Picture "9,999,999.99" RIGHT

REDEFINE say gvtotal Var vtotal ID 105 OF oDlg picture("9,999,999.99")
REDEFINE get gvtdto Var vtdto ID 108 OF oDlg picture("999.99") valid ftotal()
REDEFINE say gvdto Var vdto ID 109 OF oDlg picture("9,999,999.99")
REDEFINE say gvbase Var vbase ID 110 OF oDlg picture("9,999,999.99")
REDEFINE say gvtiva Var vtiva ID 111 OF oDlg picture("999.99")
REDEFINE say gviva Var viva ID 112 OF oDlg picture("999,999.99")
REDEFINE say gvttotal Var vttotal ID 104 OF oDlg picture("9,999,999.99")

REDEFINE BTNBMP aBoton[1] ID 113 RESOURCE "DATOS" OF oDlg;
tooltip oemtoansi("Datos Adicionales");
action (datosadicionales(),gvnombre:refresh())

REDEFINE BTNBMP aBoton[2] ID 504 RESOURCE "sumar" OF oDlg;
tooltip oemtoansi("A¤adir Linea");
action (lineas(1),oBrwt:refresh())

REDEFINE BTNBMP aBoton[8] ID 107 RESOURCE "pgup" OF oDlg;
tooltip oemtoansi("Insertar Linea");
action (lineas(19),oBrwt:refresh())

REDEFINE BTNBMP aBoton[3] ID 505 RESOURCE "restar" OF oDlg;
tooltip oemtoansi("Borar Linea");
action (lineas(2),oBrwt:Refresh())

REDEFINE BTNBMP aBoton[4] ID 506 RESOURCE "cambIar" OF oDlg;
tooltip oemtoansi("Modificar Linea");
action (lineas(13),oBrwt:Refresh())

REDEFINE BTNBMP aBoton[7] ID 106 RESOURCE "TEXTO" OF oDlg;
tooltip oemtoansi("Nuevo");
action (lineas(14),oBrwt:Refresh())

REDEFINE BTNBMP aBoton[9] ID 117 RESOURCE "TARIFA" OF oDlg;
tooltip oemtoansi("Acceso Tarifa");
action (ftarifas(1),ftotal(),oBrwt:gotop(),oBrwt:Refresh())
* action (lineas(14),oBrwt:Refresh())


REDEFINE COMBOBOX getvfpago Var vfpago ID 115 items tfpago OF odlg

REDEFINE BTNBMP aBoton[5] ID 501 RESOURCE "ACEPTAR" OF oDlg ;
ACTION ( aVret:= ActAcepta( aVars ) , lSalva := aVret[1] ,;
IIF( lSalva , oDlg:End() , Obj(aVret[2]):SetFocus() ));
MESSAGE "Guardar cambios y salir del catalogo" ;
WHEN ( Acceso(oApp:aUsuarios,"PPTO", nActua ) )

REDEFINE BTNBMP aBoton[6] ID 502 RESOURCE "SALIR" OF oDlg ACTION (lSalva := falso, oDlg:End()) ;
MESSAGE "Salir del catalogo"

ACTIVATE DIALOG oDlg CENTER on init ftotal()
Garbi
 
Posts: 340
Joined: Wed Nov 02, 2005 3:28 pm

Postby Antonio Linares » Fri Mar 31, 2006 5:14 pm

Prueba con:

oDlg:oClient = oBrowse
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Garbi » Fri Mar 31, 2006 5:18 pm

Funciona. Se maximiza la ventana, pero que hago con los botones, los says y demas.

Gracias
Garbi
 
Posts: 340
Joined: Wed Nov 02, 2005 3:28 pm

Postby Antonio Linares » Fri Mar 31, 2006 5:43 pm

Garbi,

Si quieres reajustar las posiciones de todos los controles, has de hacerlo desde el codeblock bResized:

Code: Select all  Expand view
oDlg:bResized = { || CalculaNuevasPosiciones( oDlg, oButton1, ... ) }

function CalculaNuevasPosiciones( oDlg, oButton1, ... )

   oButton1:nTop = ...
   oButton2:nLeft = ...
   ...
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Garbi » Fri Mar 31, 2006 5:54 pm

Lo probare.
Puedes poner un sample un poco más completo. Gracias
Por ejemplo que pongo despues ntop:=
Garbi
 
Posts: 340
Joined: Wed Nov 02, 2005 3:28 pm

Postby Antonio Linares » Fri Mar 31, 2006 6:54 pm

El valor de la nueva posición de cada control.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Paneles

Postby carlosortiz » Tue Apr 04, 2006 12:16 am

Antonio se pueden definir "paneles" cosa de poder separar por un lado los controles, botones, trees, etc, de la parte que uno quiera que ocupe el browse, por ejemplo menu en tree y botones sobre la izquierda en forma vertical, sobre la derecha desde la mitad y hasta el final un browse en otro panel, y que al redimensionar el dialogo se redimensione solo el panel que uno quiera, por ejemplo el sector del browse.

Es solo estético nada importante, de hecho ahora meto todos los botones en una barra de botones y que se redimensione todo el resto, pero a veces hacen falta otras cosas en el dialogo.

Gracias.
carlosortiz
 
Posts: 39
Joined: Wed Mar 22, 2006 12:53 pm
Location: Córdoba // Argentina


Return to FiveWin para CA-Clipper

Who is online

Users browsing this forum: No registered users and 15 guests