Visual Pro/5 (BBx) - USO DEL CASE Y UNA CUADRO DE LISTA

 
Vista:

USO DEL CASE Y UNA CUADRO DE LISTA

Publicado por abelsql3000 (3 intervenciones) el 30/11/2006 15:54:33
NECESITO UN CODIGO QUE ME PERMITA HACER UNA ACCION DEPENDIENDO DEL ELEMENTO DE LISTA QUE ELIJA, POR ELLO DESEO USAR EL CASE, CON OBJETO LISBOX O COMBOBOX
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:USO DEL CASE Y UNA CUADRO DE LISTA

Publicado por Francisco P. (2 intervenciones) el 05/02/2007 16:03:29
Estimado,

Lo que solicita son 2 instrucciones por separado que obviamente pueden funcionar en conjunto, alternativas en V/pro5 serian el famoso 'goto' o los if, else, break
evidentemente el case es mas elegante ;-)

Pero respondiendo a tu pregunta creo que estas funciones del CTRL te pueden ayudar;

X$=ctrl(sysgui,objeto,1)
trae el texto de la selección

X$=ctrl(sysgui,objeto,2)
trae el binario de la selección, para ocuparlo ----> dec(x$(1,2))

X$=ctrl(sysgui,objeto,3)
nº de elementos en formato binario

X$=ctrl(sysgui,objeto,7)
trae to2 los elementos de la lista, el valor del separador en hexadecimal es el $0A$

Con respecto al CASE, en V/pro5 lo maneja con los ID de los controles
(V/pro5=orientado al evento)

EL case se maneja de la misma manera que en otros lenguajes, e aquí un ejemplo;

2490 REM ======AGREGA UN BBX AL MODULO SELECCIONADO==============
2500 LISTA_BBX:
2510 LET ID=5
2520 CALL "pantalla",DIR$,ID
2530 CLOSE (1); OPEN (1)"archivo_bbx.arc"
2540 SWITCH E.ID; REM .............................>Control por modulo
2550 CASE 412
2560 LET MODULO$="GERENCIA"; LET XLISTA=401; BREAK
2570 ESCAPE
2580 CASE 422
2590 LET MODULO$="ADMINISTRACION"; LET XLISTA=403; BREAK
2600 CASE 432
2610 LET MODULO$="CONTABILIDAD"; LET XLISTA=404; BREAK
2620 CASE 442
2630 LET MODULO$="OTRA AREA 2"; LET XLISTA=405; BREAK
2640 CASE 452
2650 LET MODULO$="OTRA AREA 3"; LET XLISTA=406; BREAK
2660 SWEND
2670 REM ...............................................................

eso seria...
espero que te sirva de algo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar