Programación General > C++ Builder
Como Leo En La Unit1 Un Puntero De La Unit2??
(1/1)
hire:
--- Código: Text ---//--------------------------------------------------------------------------- #include <vcl.h>#pragma hdrstop#include "Unit1.h"#include "Unit2.h"#include <inifiles.hpp>//---------------------------------------------------------------------------#pragma package(smart_init)#pragma link "MidiOut"#pragma resource "*.dfm"TForm2 *Form2;TIniFile *botones;AnsiString a,b;char c[1]; aqui tengo declarado el puntero TIniFile *botones en la unit2 y quiero que ese puntero lo pueda leer en la unit1... como lo hago >.<???
Yañez:
Hola...
Utiliza la búsqueda, esa consulta se ha hecho varias veces ya...
Aquí tienes un enlace a una de esas búsqueda, aquí tienes otro...
Saludos :hola:
:comp: :comp: :comp: :comp: :comp: :comp: :comp:
hire:
muchas gracias yañez por la respuesta... pero vi el foro entero de c++builder antes de postear...
y no me funcionaron esas soluciones...:(:(:(
alguien puede ayudarme???
Yañez:
OK. Prueba esto:
--- Código: Text --- //--------------------------------------------------------------------------- #ifndef Unit2H#define Unit2H//---------------------------------------------------------------------------#include <Classes.hpp>#include <Controls.hpp>#include <StdCtrls.hpp>#include <Forms.hpp>#include <inifiles.hpp> //---------------------------------------------------------------------------class TForm2 : public TForm{__published: // IDE-managed Componentsprivate: // User declarations TIniFile *ini; public: // User declarations __fastcall TForm2(TComponent* Owner); void obtener(AnsiString seccion, AnsiString variable, AnsiString valor) { ini = new TIniFile("C:\\ARCHIVO.ini"); ini->WriteString(seccion, variable, valor); }};//---------------------------------------------------------------------------extern PACKAGE TForm2 *Form2;//---------------------------------------------------------------------------#endif
Observa que lo que he hecho es agregar en el encabezado la línea:
--- Código: Text --- #include <inifiles.hpp>
Luego, declaro el puntero ini.. (En private:)
--- Código: Text --- TIniFile *ini;
Y finalmente, creo una función pública:
--- Código: Text --- void escribir(AnsiString seccion, AnsiString variable, AnsiString valor) { ini = new TIniFile("C:\\ARCHIVO.ini"); ini->WriteString(seccion, variable, valor); }
Esta última función recibe tres parámetros y escribe en archivo.ini. La puedes modificar a tu gusto para que escriba, lea o haga otras cosas. O si te es más fácil crear una función pública para cada cosa que quieras hacer.
Ahora solo tienes que llamarla desde el otro formulario, para ello incluyes el archivo que contiene la función pública...
--- Código: Text --- #include "Unit2.h"
y la llamas....
--- Código: Text --- Form2->escribir("Seccion", "Variable", "3");
Esto tendría que servirte... :hola:
:comp: :comp: :comp: :comp: :comp: :comp: :comp:
Navegación
Ir a la versión completa