FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Pocket PC C贸mo definir un Browse desde recursos
Posts: 365
Joined: Sat Oct 08, 2005 07:59 PM
C贸mo definir un Browse desde recursos
Posted: Tue Dec 13, 2005 07:19 PM

Estoy intentando abrir un di谩logo con s贸lo un browse de una columna.

En mi RC:

LOOKUP1 DIALOG DISCARDABLE 43, 27, 91, 76 STYLE WS_POPUP|DS_MODALFRAME|WS_SYSMENU|WS_VISIBLE
FONT 8, "System"
BEGIN
CONTROL "Cancel", IDCANCEL, "Button", WS_TABSTOP, 44, 0, 45, 15
CONTROL "", 4001, "ListBox", WS_VSCROLL | WS_BORDER | WS_TABSTOP, 0, 16, 88, 52
END

Mi Programa:
//─────────────────────────────────────
STATIC FUNCTION LookUp()
LOCAL oDlg, oLbx

DEFINE DIALOG oDlg RESOURCE "LOOKUP1"
REDEFINE LISTBOX oLbx ID 4001;
ALIAS AFAB ;
FIELDS AFAB->NOMBRE ;
HEADERS "Nombre" ;
SIZES 100
ACTIVATE DIALOG oDlg
RETURN NIL

Lo he probado de mil maneras y siempre me da error al compilar:
a1.prg(222) Error E0022 Invalid lvalue: 'Numeric' - La linea 222 es el REDEFINE

Por favor, alguien me puede decir qu茅 estoy haciendo mal? Mejor con un ejemplo. Gracias

Rafael
[/url]

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
C贸mo definir un Browse desde recursos
Posted: Tue Dec 13, 2005 07:55 PM

Rafael,

Cambia "ListBox" por "TWBrowse" en el RC.

En el c贸digo prueba esto:

REDEFINE LISTBOX oLbx ID 4001 OF oDlg;
ALIAS AFAB ;
FIELDS AFAB->NOMBRE ;
HEADERS "Nombre" ;
SIZES 100

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 365
Joined: Sat Oct 08, 2005 07:59 PM
C贸mo definir un Browse desde recursos
Posted: Tue Dec 13, 2005 08:19 PM

No: Al compilar sigue dando este error:

a1.prg(222) Error E0022 Invalid lvalue: 'Numeric'

222 es la l铆nea del REDEFINE. Esroy utilizando la 煤ltima versi贸n de FWPPC, reci茅n descargada anteayer.

De la 煤nica manera que consigo compilar es :
REDEFINE LISTBOX oLbx ID 4001 OF oDlg y nada m谩s.

Pero esto, claro, me da error al ejecutar (oLbx es NIL)

Rafael

Antonio: Yo utilizo Pelles C para crear mis .RC 驴Hay alg煤n otro programa que permita generar archivos m谩s compatibles con FWPPC, sin tener que retocar tanto a mano el RC?

Posts: 365
Joined: Sat Oct 08, 2005 07:59 PM
C贸mo definir un Browse desde recursos
Posted: Wed Dec 14, 2005 10:57 AM
Antonio:
EMpiezo a creen que el REDEFINE LISTBOX en di谩logos no funciona. Sencillamente, da error y ni siquiera compila. Lo mejor que he conseguido es esto:

oLbx := TWBrowse():Redefine(4001,{|| {customer->first} }, oDlg,;
{"Nombre"},;
{200}, , , , , {|nRow,nCol,nFlags|MiFuncion()},;
, oFont , , , , , , "Customer", , , , )

que por lo menos se ve en su di谩logo pero da error "ARGUMENT ERROR .TOT." en cuanto haces click en cualquier registro. Adjunto c贸digo completo de la prueba, a ver si puedes darme alguna idea de como solucionarlo:


#include "FWCE.ch"
#include "WinApi.ch"
//----------------------------------------------------------------------------/
FUNCTION Main()
LOCAL oWnd, oDlg, oLbx

USE (CurDir()+"\Customer") NEW             // La DBF de \SAMPLES
DEFINE WINDOW oWnd TITLE "Test"
ACTIVATE WINDOW oWnd ON INIT AbrirDlg()
RETURN NIL

STATIC FUNCTION AbrirDlg()

DEFINE DIALOG oDlg RESOURCE "LOOKUP1"
DEFINE FONT oFont NAME "Arial" SIZE 0, -12

oLbx := TWBrowse():Redefine(4001,{|| {customer->first} }, oDlg,;
                            {"Nombre"},;
                            {200}, , , , , {|nRow,nCol,nFlags|MiFuncion()},;
                            , oFont , , , , , , "Customer", ,  , , )

ACTIVATE DIALOG oDlg
RETURN NIL

FUNCTION MiFuncion()
MsgInfo("Hola")
RETURN NIL

// -----------------------------------------------------------------------
El fichero .RC:

#include <windows.h>
#include <commctrl.h>
#include <richedit.h>

LANGUAGE LANG_SPANISH,SUBLANG_SPANISH_MODERN

LOOKUP1 DIALOG DISCARDABLE 43, 27, 91, 76
STYLE WS_POPUP|DS_MODALFRAME|WS_SYSMENU|WS_VISIBLE
FONT 8, "System"
BEGIN
  CONTROL "Cancel", IDCANCEL, "Button", WS_TABSTOP, 0, 0, 45, 15
  CONTROL "", 4001, "TWBrowse", WS_VSCROLL|WS_BORDER|WS_TABSTOP, 0, 16, 88, 52
END
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
C贸mo definir un Browse desde recursos
Posted: Wed Dec 14, 2005 11:05 AM

Rafael,

Tu ejemplo ha funcionado a la primera. Lo 煤nico que tienes que quitar es esta l铆nea del RC:

include <richedit.h>

ya que no existe, y entonces el RC no se compila.

De todas formas, una vez se visualiza, al hacer click en una l铆nea del browse da un error. Vamos a ver de que se trata.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 365
Joined: Sat Oct 08, 2005 07:59 PM
C贸mo definir un Browse desde recursos
Posted: Wed Dec 14, 2005 11:08 AM

S铆, Antonio. Justo 茅se es el problema
Rafael

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
C贸mo definir un Browse desde recursos
Posted: Wed Dec 14, 2005 11:15 AM

Rafael,

Acabamos de publicar un nuevo build de FWPPC que soluciona el problema. Por favor desc谩rgalo y prueba tu ejemplo de nuevo. Gracias.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 365
Joined: Sat Oct 08, 2005 07:59 PM
Funciona!
Posted: Wed Dec 14, 2005 11:40 AM

Antonio: La nueva versi贸n de FWPPC funciona perfectamente!

Respecto a lo del REDEFINE LISTBOX, acabo de descubrir que es dependiente del orden de los par谩metros:

Este funciona bien:
REDEFINE LISTBOX oLbx FIELDS AFAB->NOMBRE ALIAS "AFAB" ID 4001 OF oDlg ON DBLCLICK MiFuncion()

Pero este da Error E0022 Invalid lvalue: 'String' al compilar:
REDEFINE LISTBOX oLbx ID 4001 OF oDlg ALIAS "AFAB" FIELDS AFAB->NOMBRE

Gracias!
Rafael

Continue the discussion