关于C++builder的多form连接问题,请大侠帮忙呀!
小弟是名毕业生,因为毕业设计要用C++builder做,而小弟之前没有学过该软件。现有一问题不清楚,希望大侠指教,先谢大家了!
我在form2里面做了几个Radiobutton 当点在相应的 点上的时候会跳到对应的form上去。可问题是,当我在编译的时候,出现
[C++ Error] Unit2.cpp(44): E2451 Undefined symbol 'Form4'
[C++ Error] Unit2.cpp(47): E2451 Undefined symbol 'Form5'
[C++ Error] Unit2.cpp(50): E2451 Undefined symbol 'Form6'
我想知道这是怎么回事? 我在头文件上定义了它们了的,而且 为什么只显示 Form4,Form5,Form6有问题呢Form3
没有显示有问题? 我看过了,Form4,5,6和Form3的没什么差别呀.大侠指教
//---------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
#include "Unit3.h"
#include "Unit4.h"
#include "Unit5.h"
#include "Unit6.h"
//---------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------
void __fastcall TForm2::Button1Click(TObject *Sender)
{
if (rdbt1->Checked==true)
Form2->Hide();
Form3->Show();
if (rdbt2->Checked==true)
Form2->Hide();
Form4->Show();
if (rdbt3->Checked==true)
Form2->Hide();
Form5->Show();
if (rdbt4->Checked==true)
Form2->Hide();
Form6->Show();
}
[解决办法]
检查 4 5 6窗体名称是否与使用的一样
void __fastcall TForm2::Button1Click(TObject *Sender)
{
if (rdbt1->Checked==true)
{
Form2->Hide();
Form3->Show();
}
if (rdbt2->Checked==true)
{
Form2->Hide();
Form4->Show();
}
if (rdbt3->Checked==true)
{
Form2->Hide();
Form5->Show();
}
if (rdbt4->Checked==true)
{
Form2->Hide();
Form6->Show();
}
}
[解决办法]
应该是头文件引起的。
[解决办法]
呵呵~有意思。试了下没有问题啊。
帮顶一下。
[解决办法]
建议你把unit4.h也帖上来看看吧
[解决办法]
试一下把头文件放到最上面, 变成这样:
#include <vcl.h>
#include <Unit2.h>
#include <Unit3.h>
#include <Unit4.h>
#include <Unit5.h>
#include <Unit6.h>
#pragma hdrstop
这个问题我也不是很清楚, 我用的CBC是网上下载的, 699MB的那个ISO,安装的时候提示我插入第2张盘, 我直接点了取消
然后我最近在用它做毕业设计, 我的第一个程序就是把头文件放到最开始的, 然后能调用其它窗体中的内容; 但第二个程序的时候, 就不行了, 我又改放到下面, 就好像楼主你的那样子, 就行了
具体原因为什么会这样我也不清楚
[解决办法]
头文件问题
[解决办法]
看下你的unit4.h,unit5.h,unit6.h是否在当前工程里,再不行就新建form把原来form上的东西都拷过来。
bcb经常会出现这样的错误。
[解决办法]
很有可能是名字问题。窗口都有两个名字可供设置,第一个储存窗口时要设置,默认为Unit1,这个名字用来调头文件时用,另一个在属性里设置Name,这个名字用来对窗体操作时引用,默认为Form?。
严格地说,还有一个,在Caption里,是将来窗体运行时显示的。
出现那样的问题应该是三个名字搞混了吧?