elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda para utilizar las teclas F1 F2 F3 etc. Dev C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda para utilizar las teclas F1 F2 F3 etc. Dev C++  (Leído 4,575 veces)
pedro0620

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Ayuda para utilizar las teclas F1 F2 F3 etc. Dev C++
« en: 3 Septiembre 2016, 04:28 am »

Estoy haciendo un menu donde el usuario eliga el nombre del archivo y pueda ingresar datos en el... El problema que me surgio es que tengo que utilizar las teclas de funcion para elegir las opciones:

F1 - Crear archivo
F2 - Ingresar datos
ESC - Salir

Ya tengo todo lo demas lo unico que ocupo es saber como utilizar esas teclas. Tengo entendido que con switch no se puede que es con puros if... O si se puede con switch?

Este es el codigo:

#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <windows.h>
using namespace std;

FILE *archivoF;
char nombre[50];
char texto=' ';

void crear()
{
   cout<<"Ingrese el nombre del archivo: ";
    cin>>nombre;   
    strcat(nombre,".txt");                   /*Utilize la funcion strcat para concatenar el nombre que el usuario
                                              quiera darle al archivo con la extensión .txt porque en C
                                        no existe el operador concatenación (+) */     
    system("pause>null");

}

void escribir()
{
   archivoF=fopen(nombre,"w");
   if(archivoF==NULL)
   {
      
      cout<<"Error en la apertura";
      
   }
   
   cout<<"Ingrese el texto: (presione enter para finalizar): "<<endl;
   
   do
   {
      texto=getche();
      fputc(texto,archivoF);
      
   }while(texto!=13);
   
   fclose(archivoF);
}

void mostrar()
{
   
}

int main()
{
   int x;
   
      cout<<endl<<endl<<"\t\t\t Menu"<<endl<<endl;
           cout<<"\t[F1].-  Crear archivo. "<<endl;
           cout<<"\t[F2].-  Ingresar datos "<<endl;
           cout<<"\t[F3].-  Mostrar archivo "<<endl;
           cout<<"\t ESC.-  Salir "<<endl;
           cout<<"\tOpcion: ";
           cout<<endl;
           x=getch();
      
}


Si me pudieran ayudar se los agradeceria muchooo!


En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.705


🏴 Libertad!!!!!


Ver Perfil WWW
Re: Ayuda para utilizar las teclas F1 F2 F3 etc. Dev C++
« Respuesta #1 en: 3 Septiembre 2016, 04:38 am »

NO USES CONIO.H

Para usar estas teclas hay que ver cuales son sus códigos hace años que las utilice pero no recuerdo sus codigos. Lo que si recuerdo es que cuando precionas estas teclas manda 2 valores el primero es 0 y el segundo el valor de la tecla en cuestión.

Te propongo esto:
Código
  1. x=getchar();
  2. switch(x){
  3. case 0://Teclas especiales... leer otra vez el valor
  4. x=getchar();
  5. printf("El valor de la tecla es %i",x);
  6. break;
  7. default://Otras teclas.
  8. break;
  9. }

Saludos


En línea

bengy


Desconectado Desconectado

Mensajes: 501


mis virtudes y defectos son inseparables


Ver Perfil WWW
Re: Ayuda para utilizar las teclas F1 F2 F3 etc. Dev C++
« Respuesta #2 en: 3 Septiembre 2016, 05:40 am »

porque no usar conio.h?
En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.705


🏴 Libertad!!!!!


Ver Perfil WWW
Re: Ayuda para utilizar las teclas F1 F2 F3 etc. Dev C++
« Respuesta #3 en: 3 Septiembre 2016, 07:32 am »

  • No es estándar
  • Solo sirve en Turbo C

En todo el código solo sirve para la funcion getch.

Por que no usar mejor getchar que si es estándar y se encuentra en stdio.h

Creo que el usuario tiene un pesimo maestro de programacion, en fin que se le puede hacer?


Repito NO USEN CONIO.H


Saludos?
En línea

bengy


Desconectado Desconectado

Mensajes: 501


mis virtudes y defectos son inseparables


Ver Perfil WWW
Re: Ayuda para utilizar las teclas F1 F2 F3 etc. Dev C++
« Respuesta #4 en: 3 Septiembre 2016, 07:40 am »

ok saludos y muchas gracias por la aclaracion
En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.705


🏴 Libertad!!!!!


Ver Perfil WWW
Re: Ayuda para utilizar las teclas F1 F2 F3 etc. Dev C++
« Respuesta #5 en: 5 Septiembre 2016, 16:34 pm »

Hola acabo de validar el siguiente codigo y no funciona, YA QUE EL CMD de WINDOWS procesa algunas Teclas Especiales FX y no las pasa al programa en ejecucion.

Código
  1. #include<stdio.h>
  2.  
  3. int main() {
  4. char x;
  5. x = getchar();
  6. switch(x){
  7. case 0: //Teclas especiales... leer otra vez el valor
  8. x = getchar();
  9. printf("El valor de la tecla es %i",x);
  10. break;
  11. default: //Otras teclas.
  12. break;
  13. }
  14. }

Posiblemente funcione con getch y en Turbo C o algun otro entorno de 16 bits (NETA!?!?!?!) pero en windows 10 no funciono.

Saludos!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines