Pascal/Turbo Pascal - ayuda con menu

 
Vista:

ayuda con menu

Publicado por Pablo (7 intervenciones) el 09/06/2008 03:54:50
Me gustaría saber si alguien sabe donde puedo conseguir información de como hacer un menú en Pascal, desde ya muchas gracias en lo que puedan ayudar.-
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:ayuda con menu

Publicado por Lukaz Farias (3 intervenciones) el 09/06/2008 08:01:48
Hola pablo como estas nose muy biem que es lo queres hacer??? se mas especifico por favor gracias!!
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

RE:ayuda con menu

Publicado por Pablo (7 intervenciones) el 14/06/2008 07:22:56
Hola Lucas, mira tenia idea de hacer un menu de opciones con solapas desplegables en cada uno de las opciones, me doy maña pero mi nivel es bajo,
me gustaria poder hacerlo el otro dia intentando algo logre pero solo lo puedo trabajar desde el teclado numerico,,, Me gustaria poder hacerlo desde las flechas para elejir las opciones o desplegar los manus, pero se que son algo asi como (#13) es el enter pero no se como declararlo para que me lo tome en el procedimiento o en las variables que actuan en el cuerpo del programa desde ya muchas gracias y perdon por la demora.
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

RE:ayuda con menu

Publicado por Dani (94 intervenciones) el 09/06/2008 15:39:03
¿En modo texto?

REPEAT

{limpamos pantalla (opcional)
mostramos las opciones
leemos la opcion introducida, con readln o readkey
un CASE con las distintas opciones, se llama al procedimiento o función elegido}

UNTIL //hasta que se haya introducido la opcion para salir del menú

Con esto tenemos un menú, después de elegir una opción y ejecutarse los procedimientos o funciones de esa opcion, se vuelve al menú, hasta que se sale
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

RE:ayuda con menu

Publicado por Pablo (7 intervenciones) el 14/06/2008 07:29:44
Hola Daniel gracias por tu contestacion, mira vos me decis en modo texto, hay me mataste... mi nevel es bajo pero dentro de todo me doy algo de maña y no tengo fiaca o pereza en leer o investigar, el otro dia logre una mini bara de opciones pero no la podia elegir de otra manera que no sea con opciones letras o numeros, me gustaria saber como poner ejemplo como declaro una variable que se que es el enter (#13) dentro del cuerpo del programa y como se la declaro al procedimiento; ya que en string no me lo permite
integer menos asi que hay me quede. Desde ya muchas gracias y perdon por la demora.
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

RE:ayuda con menu

Publicado por Diego Romero (996 intervenciones) el 14/06/2008 09:24:53
Para saber qué tecla presionó el usuario hay varias maneras. La que pongo a continuación te puede ser útil:

tecla:=readkey;

Readkey es una función que espera a que el usuario presione una tecla y devuelve el caracter de la tecla presionada en un tipo char.
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

RE:ayuda con menu

Publicado por Pablo (7 intervenciones) el 14/06/2008 20:24:54
Muchas gracias, pero en un if o en un case...
ej:

progran ventana;
uses crt;
var
tecla: .....................? char, string, real, integer no me andan para las flechas!

begin
clrscr;
tecla:=readkey;
write(tecla);
readkey;
end.

y en un iF o un case dentro de un procedure es la misma pregunta como se las declaro a "Tecla"...
seria
if tecla = #13 then

if tecla = #80 then

if tecla = #72 then

if tecla = #75 then

Muchas gracias.-
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

RE:ayuda con menu

Publicado por Dani (94 intervenciones) el 14/06/2008 23:26:05
tecla ha de ser de tipo carácter (char). Y hazlo de la siguiente manera

tecla := upcase (readkey);

Entonces, las letras que introduzca el usuario estarán en mayúscula, da igual como si las introduce en minúscula, porque el upcase las cambia. O sea, no hagas nunca esto IF (tecla = 'a') porque no puede ser minúscula

Para referirte a letras

IF (tecla = 'A')
...
IF (tecla = 'Z')

Para referirte a números

IF (tecla = '0')
...
IF (tecla = '9')

Para referirte a otros caracteres, usa su código ASCII. Por ejemplo, para ver si se ha pulsado la tecla escape (ESC) sería

IF (tecla = #27) THEN // ya que el codigo ascii de esc es el 27
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

RE:ayuda con menu

Publicado por PABLO (7 intervenciones) el 17/06/2008 05:23:23
Hola Diego , muchas gracias, es un gran aporte el tuyo. Una pregunta mas como para no molestar con mi ignorancia... como tengo que definir la variable en este ejemplo que me das: (tecla de que tipo seria?)

Para referirte a otros caracteres, usa su código ASCII. Por ejemplo, para ver si se ha pulsado la tecla escape (ESC) sería

IF (tecla = #27) THEN // ya que el codigo ascii de esc es el 27

y si no es de mucha molestia; que es una variable tipo byte?
Muchas gracias, hacen falta muchas mas personas como ustedes!!!!
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

RE:ayuda con menu

Publicado por gamma (1 intervención) el 13/11/2008 23:34:57
comoago un menu de opciones despleglabe y usar las flechas de cursor
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

RE:ayuda con menu

Publicado por Seruhio-kun (1 intervención) el 10/12/2008 22:52:49
Saludo amigos!
tengo un problema parecido, como hago para que el usuario ponga fin al programa?

program experiment;
uses crt;
var
respuesta,letra:char;
var area,base,altura,lado1,lado2,lado:real;
begin
clrscr;
repeat respuesta:='0';
clrscr;
gotoxy(20,5); writeln('Seleccione que desea calcular');readln;
gotoxy(15,5); writeln('El area de : [T]riangulo, [C]uadrado, [R]ectangulo');
readln(letra);
clrscr;
case letra of
't','T': begin gotoxy(5,5); writeln('Para Calcular El Area de un Triangulo');
writeln('Ingrese Altura');
readln(altura);
writeln('Ingrese Base');
readln(base);
area:=base*altura/2;
writeln('El area del triangulo es:', area:5:2); readkey;
clrscr;
end;
'c','C': begin gotoxy(5,5); writeln('Para calcular el area de un cuadrado');
writeln('Ingrese lado'); readln(lado);
lado:=(sqr(lado)); writeln('El area del cuadrado es:',lado:5:2); readkey;
clrscr;
end;
'r','R': begin gotoxy(5,5); writeln('Para calcular el area de un rectagulo');
writeln('Ingrese los lados del rectangulo'); readln(lado1); readln(lado2);
area:=lado1*lado2;
writeln('El area del cuadrado es:',area:5:2); readkey;
end;
else gotoxy(10,5); writeln('Esta opcion no es valida'); readkey; end;
until respuesta='N';
end.
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