Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Formulario con items de un fichero de texto

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Formulario con items de un fichero de texto Responder citando

Tengo un formulario con un ComboBox, en el cual deseo que aparezcan unos items que se correspondan con los nombres que hay escritos en un fichero de texto, y que a la vez de la opcion de crear uno nuevo.

Es decir:

Fichero de texto
Pepe
Juan
Alberto


ComboBox:
Pepe
Juan
Alberto
Nuevo Usuario


Y por ultimo como haria para que al hacer clic en Nuevo Usuario se desplegase un nuevo formulario para rellenar los datos de ese nuevo usuario.

Gracias
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Desde mi putno devista tienes un par de opciones: o verificar el contenido del CombBox o el ítem en que estás posicionado, que presonalmente me gusta más. Lo que tienes que tener en cuenta es que la porpiedad Sorted del ComboBox tiene que estar a false para que no se te meta por medio la claúsula Nuevo Usuario. Podrías hacer algo así:
Código:
if (ComboBox1->Items->Strings[ComboBox1->ItemIndex] == "Nuevo Usuario"
{
     <Código para dar de alta un nueva ficha>
}

Con esto verifica que el contenido de la cadena es el que te interesa.
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Un poco mas alla Responder citando

Gracias por la ayuda, pero soy un poco novatillo y necesito saber como hacer el resto:
-Como leo los nombres que estan en cada linea del fichero de texto y los inserto como items en el comboBox.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Hola, Angell (y Angel, esta parecía una conversación celestial). Lo que pides es sencillo para cualquier TStrings (lista de cadena de caracteres) pues es un método que ya tiene incorporado. Como la propiedad Items de un TComboBox es de ese tipo de datos también lo tiene:
Código:
ComboBox1->Items->LoadFromFile(NombreExtensionYRutaDelFicheroDeTexto);

Lo único que tendrás que pensar tú es dónde se hace esa lectura (al mostrar el formulario, al pulsar cierto boton, ...)

Suerte.
_________________
Ojos ... no son ojos porque los ves, son ojos porque te miran
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Hola, Tambien quiero aportar algo, sucede que cuando uno es novato las cosas mas sencillas parecen complicadas y viceversa, asi que lo mejor es un pequeño ejemplo:
Crea un nuevo proyecto con dos formularios, en el primero pones el Combo en el otro un Edit, este sera el formulario para captar datos del nuevo usuario.
Vamos a usar los eventos OnEnter y OnChange en el primero cargamos el fichero si existe y en el segundo captamos el nuevo usuario:
Código:

void __fastcall TForm1::ComboBox1Enter(TObject *Sender)
{
ComboBox1->Text="";//Limpia texto si necesario
ComboBox1->Items->Clear();
try
{
 ComboBox1->Items->LoadFromFile("C:\\Users.cfg");
} catch(...){}//El archivo puede no existir, ej. la primera vez
ComboBox1->Items->Add("Nuevo Usuario");
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
if(ComboBox1->Text=="Nuevo Usuario")
{
 //Muestras el Form de Nuevo Usuario de forma Modal
 Form2->ShowModal();
 //Actualizar Fichero
 ComboBox1->Items->Delete(ComboBox1->Items->Count-1);//Quitamos Nuevo Usuario // Para no Repetirlo Ojo Sorted a false o hacer como dice Angel
 ComboBox1->Items->Add(Form2->Edit1->Text);//Añadimos el nuevo usuario
 ComboBox1->Items->SaveToFile("C:\\Users.cfg");//Guardamos Fichero
 ComboBox1->Items->Add("Nuevo Usuario");//Reponemos Nuevo Usuario

}
}
//---------------------------------------------------------------------------
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.