Ver Mensaje Individual
  #1  
Antiguo 22-07-2019
michal michal is offline
Miembro
 
Registrado: feb 2015
Posts: 28
Reputación: 0
michal Va por buen camino
cómo deshabilitar un menu(Form principal) desde otro Form contenido en una DLL dinámi

Hola a todos, estoy haciendo un proyecto grande que involucra bases de datos en SQLite etc..
Entonces quiero que cuando mi proyecto detecte que no existe la base de datos, se inhabilite el menu para acceder a ella, y solo esté accesible uno para crear una Base Datos nueva, y que, luego, al ser creada, se vuelva a habilitar todo el menú. Parece complejo, y por eso hice algo nuevo, para solamente tratar el tema que me ocupa, expliqué lo anterior, para que vean el motivo que me impulsa a todo esto.
Ahora tengo el Proyecto1, un sencillo Form1,un botón(para llamar a Form3), con un TMainMenu, y algunos Items y cada uno con un subItem (ninguno hace nada) solo quiero habilitarlos y deshabilitarlos.
Tengo un Proyecto2.dll, que tiene dentro a Form3, el cual tiene un botón, para habilitar/deshabilitar los Items del TMainMenu del Form1. Desde el Form1 puedo llamar al Form3 dinámicamente (me saltaré esos pasos). En la Unit3 (que pertenece al Form3) agregué el header Unit1.h(que pertenece al Form1) y en evento onclick del botón del Form3 puse esto:

Código PHP:
void __fastcall TForm3::Button1Click(TObject *Sender)
{
 if(
Form1->Item11->Enabled)
 {
 
Form1->Item11->Enabled false;
 
Form1->Item21->Enabled false;
 
Form1->Item31->Enabled false;
 
Button1->Caption "Activate Menu";
 }
 else
 {
  
Form1->Item11->Enabled true;
  
Form1->Item21->Enabled true;
  
Form1->Item31->Enabled true;
  
Button1->Caption "Deactivate Menu";
 }

Al compilar me dá este ERRORSAZO

[ilink32 Error] Error: Unresolved external '_Form1' referenced from C:\USERS\ADMINISTRADOR\DOCUMENTS\EMBARCADERO\STUDIO\PROJECTS\MAINMENU2\WIN32\DEBUG\UNIT3.OBJ

Quiero saber qué es lo que estoy haciendo mal, gracias ya por adelantado

Última edición por Casimiro Notevi fecha: 22-07-2019 a las 19:32:43.
Responder Con Cita