Page 1 of 1

Ajuste Tamaño Listbox

Posted: Sat Apr 14, 2007 10:14 am
by JoseLuis
Hola amigos

Me estoy liando y no se porque me sale el listbox como en la imagen siguiente:
[img][img]http://img242.imageshack.us/img242/6538/ventanawx3.jpg[/img][/img]
Porque? no me ocupa la pantalla?
El codigo del listbox es:

Code: Select all

      @ 30, 0 Listbox oLbx FIELDS  dtoc((aAlias[1])->Fecha),;
                               oemtoansi((aAlias[1])->cnomcli);
                               HEADER  " Fecha ", " Cliente ";
                               FIELDSIZES    52,200;
                               ALIAS aAlias[1];
                               CURSOR dedo;
                               COLOR CLR_BLACK,  nRGB(226,226,208) ;
                               ON LEFT DBLCLICK  (iif(!(aAlias[1])->(eof()),(cTitulo:="Visualización de acciones ",Entalba(aAlias,cTitulo,"V"),oLbx:Refresh()),.T.));
                               OF Publicas:oWppal;
			       PIXEL
   oLbx:nStyle:= nOr( WS_VSCROLL, WS_HSCROLL )
   oLbx:nLineStyle := 1
   oLbx:Setcolor(nil,RGB(245,239,191))
   oLbx:nClrBackHead := RGB(248,191,36)
   oLbx:aJustify := {.F.,.F.}
   oLbx:aHJustify := {2,2}
   oLbx:nClrPane:={||iIF((oLbx:cAlias)->(OrdKeyNo())%2==0,nRGB(245,219,175),nRGB(245,239,191))}
Saludos

Jose Luis

Posted: Sat Apr 14, 2007 7:34 pm
by R.F.
Tienes que avisarle a la ventana contenedora que control es que toma el aera cliente:

Publicas:oWppal:SetControl(oLbx)

Y listo, esto debe de ir antes del ACTIVATE WINDOW

Posted: Sun Apr 15, 2007 5:09 pm
by JoseLuis
Gracias por la respuesta René
Aplicando el Setcontro(), me da el siguiente error

*************************************************
Error description: Error BASE/1004 Message not found: TWINDOW:SETCONTROL

Stack Calls
===========
Called from: => TWINDOW:ERROR(179)
Called from: tobject.prg => (b)HBOBJECT:HBOBJECT(105)
Called from: => TWINDOW:MSGNOTFOUND(0)
Called from: WINDOW.PRG => TWINDOW:SETCONTROL(167)
Called from: acciones.prg => MAIN(103)

***********************************************

Yo nunca había tenido que utilizar ésto y me había funcionado, la verdad es que siempre he utilizado listbox en ventanas hijas o Dialogos. En éste caso lo utilizo en ventana pincipal no MDI y el codigo completo es:

Code: Select all

     DEFINE WINDOW Publicas:oWPpal FROM 5,5 TO 35,90 NOMAXIMIZE;
       TITLE Publicas:cTitulo;
       ICON oIco 
    DEFINE FONT oFont NAME 'MS Sans Serif' SIZE 0,-8
    Publicas:oWPpal:oFont:=oFont
    SET MESSAGE TO (" (c) GrupoSunade ") CENTERED OF Publicas:oWPpal
    DEFINE BUTTONBAR oBar TOP 3d OF Publicas:oWPpal 
    DEFINE BUTTON RESOURCE "ANADIR" of oBar NOBORDER MESSAGE "Añadir"      ACTION (cTitulo:="Creación de nuevas acciones ",;
                        (aAlias[1])->(OrdSetFocus("Fecha")),oTab:nOption:=1,oTab:refresh(),;
                        Entalba(aAlias,cTitulo,"A"),oLbx:Refresh());
                        TOOLTIP "Añadir"
    DEFINE BUTTON RESOURCE "MODIFICAR" of oBar NOBORDER  MESSAGE "Modificar"   ACTION (iif(!(aAlias[1])->(eof()),(cTitulo:="Modificación de envios ",;
                        Entalba(aAlias,cTitulo,"M"),oLbx:Refresh()),.T.));
       			TOOLTIP "Modificar"
    DEFINE BUTTON RESOURCE "BORRAR" of oBar NOBORDER  MESSAGE "Eliminar"    ACTION (Entalba());
			TOOLTIP "Eliminar"
    DEFINE BUTTON RESOURCE "BUSCAR" of oBar NOBORDER  MESSAGE "Localizar"   ACTION (Entalba());
			TOOLTIP "Localizar"
    DEFINE BUTTON RESOURCE "VER" of oBar NOBORDER  MESSAGE "Visualizar"  ACTION (Entalba());
			TOOLTIP "Zoom"
    DEFINE BUTTON RESOURCE "IMPRESORA" of oBar NOBORDER  MESSAGE "Imprimir"    ACTION (Entalba());
   		        TOOLTIP "Imprimir Listados"
    DEFINE BUTTON RESOURCE "SALIR" of oBar NOBORDER  MESSAGE "Salir"       ACTION Publicas:oWppal:END();
			TOOLTIP "Salir"
      @ 30, 0 Listbox oLbx FIELDS  dtoc((aAlias[1])->Fecha),;
                               oemtoansi((aAlias[1])->cnomcli);
                               HEADER  " Fecha ", " Cliente ";
                               FIELDSIZES    52,200;
                               ALIAS aAlias[1];
                               CURSOR dedo;
                               COLOR CLR_BLACK,  nRGB(226,226,208) ;
                               ON LEFT DBLCLICK  (iif(!(aAlias[1])->(eof()),(cTitulo:="Visualización de acciones ",Entalba(aAlias,cTitulo,"V"),oLbx:Refresh()),.T.));
                               OF Publicas:oWppal;
			       PIXEL
   oLbx:nStyle:= nOr( WS_VSCROLL, WS_HSCROLL )
   oLbx:nLineStyle := 1
   oLbx:Setcolor(nil,RGB(245,239,191))
   oLbx:nClrBackHead := RGB(248,191,36)
   oLbx:aJustify := {.F.,.F.}
   oLbx:aHJustify := {2,2}
   oLbx:nClrPane:={||iIF((oLbx:cAlias)->(OrdKeyNo())%2==0,nRGB(245,219,175),nRGB(245,239,191))}
           @ Publicas:oWPpal:nHeight() - 45, 0  TABS oTab ;
	                            PROMPTS "&Fecha","&Cliente" ;
				    COLOR CLR_BLACK, CLR_WHITE ;
                                    ACTION ((aAlias[1])->(Ordsetfocus(cambia(oTab:nOption))),oLbx:Refresh())
  oTab:Default()
 * Publicas:oWppal:SetControl(oLbx) 
    ACTIVATE WINDOW Publicas:oWPpal;
              VALID Salir()
Saludos

Jose Luis

Posted: Sun Apr 15, 2007 7:30 pm
by Antonio Linares
Prueba así:

Publicas:oWppal:oClient := oLbx

Posted: Mon Apr 16, 2007 3:35 pm
by JoseLuis
Perfecto Antonio

Saludos

Jose Luis