保证给分,否则请admin封号!!
小弟现有两个问题很着急,望各位高手指点,
(一)请教如何动态创建组件(按钮,lable,meno等),要求就象BCB一样,在我的工具栏上一点,就可以在画图区拖拉生成倥件.要求可删除的,还可以改变大小!!!!请教各位!!谢谢!!!!
(二)作这样一个东东:
本地机中有若干数据库表, 我为每一个表作了一个卡片,卡片上记录者表上的信息。问题是:如何将表和卡片建立一一对应关系?在制作卡片时,“工具”菜单中有一项是“联结数据库”,点击后弹出对话框,选定数据库表,确定后就建立了连接.当我浏览库中的表时 ,点击“显示卡片”,就会显示出对应的卡片来。该如何做??或者有其他更方便的方法?望各位高手不吝赐教!!
由于小弟新学BCB,所以是菜鸟一只,请各位高手写上详细代码,只要能用,保证给分!!
问题点数:100、回复次数:9Top
1 楼nightfallrove(过儿 明月装饰了你的窗 你装饰了我的梦)回复于 2003-06-04 11:14:16 得分 20
第一个问题可以这样吧,不知道符不符合你的要求,
Tbutton* button1=new Tbutton(this);//忘了要不要用this了,
button1->parant=Form1;//设置父属性,假设这个button是放在FORM1内,
button1->show();
关于动态创建组件www.chinbcb.com和www.ccrun.com上有很多,包括
创建控件数组都有,
第二个问题我想可以给表添加一个字段,用来记录对应的卡片,
具体方法你自己再想想吧,我没做过相关的东西,
Top
2 楼starpalace(没有星星的夜里)回复于 2003-06-04 11:31:28 得分 20
不是this, 应该是 Application, 代码如下: (BCB6调试通过的)
void __fastcall TForm1::FormClick(TObject *Sender)
{
TButton* button1=new TButton(Application);
button1->Parent = Form1;
button1->Caption = "按钮1";
button1->Left = 10;
button1->Top = 10;
button1->Show();
}
Top
3 楼shanewest1(炉子)回复于 2003-06-04 11:42:33 得分 0
upTop
4 楼PPower(月亮光光,照地堂)回复于 2003-06-04 11:43:50 得分 0
你是不是常常不給分的呀^-^.
你要的東西是可以實現的,但代碼不少。你要完整的代碼,那麼要花費的時間也不少。相當於請槍手給你寫文章了。
Top
5 楼whitetiger8(键盘未敲坏,基本功未练成)回复于 2003-06-04 13:51:54 得分 30
你们别吵了!!
TButton* button1=new TButton(NULL);这里放NULL和this 和application都行
button1->Parent = Form1;
button1->Caption = "按钮1";
button1->Left = 10;
button1->Top = 10;
button1->Show();
Top
6 楼whitetiger8(键盘未敲坏,基本功未练成)回复于 2003-06-04 13:52:32 得分 0
button1->Show();我不解其意!!!不用写也行Top
7 楼hunyahun(露头一铁锹)回复于 2003-06-04 14:17:29 得分 0
第一个问题用上面的方法就可以了,第二问题可以利用ADOConnect中相应的属性,具体的名字忘了,但是绝对有属性可以获知连结的数据库中的表的信息。我用过,不过好像需要数据库支持。Top
8 楼wg961423(臭虫)回复于 2003-06-04 14:44:39 得分 30
for(int i=0;i<100;i++)
{
Tbutton* button=new Tbutton(this);
button->parant=Form1;
button->Name="Btn"+IntToStr(i);
button->Top=10+30*i;
button->Left=20;
button->Height=20;
button->Width=100;
button->Caption="这是第"+IntToStr(i)+"个按钮";
}Top
9 楼hebuliyan(Eddie)回复于 2003-06-05 09:14:57 得分 0
你们作的生成按扭都是静态的 ,不能移动和改变大小,如何在生成之后还能改变Top、Left、Height、 Width什么的 ?Top




