Delphi中怎样用代码添加控件 10

比如我运行的时候,在Form1中单击按钮,就会在Form2中添加一个Label控件,应该怎么写?如果用EXCEL的话,那么请问一下,怎么打印我查询的某几条记录呢?... 比如我运行的时候,在Form1中单击按钮,就会在Form2中添加一个Label控件,应该怎么写?
如果用EXCEL的话,那么请问一下,怎么打印我查询的某几条记录呢?
展开
 我来答
恬然且谦虚的小才子Q
2011-01-23 · TA获得超过1361个赞
知道小有建树答主
回答量:933
采纳率:0%
帮助的人:401万
展开全部
A和B表通过什么字段关连呢?公司名?这个知道了才好写语句

Delphi好象有几个控件可以操纵EXCEL的,当然用OLE自动化也可以,以下是找到的一些控件的使用例子,熟悉后应该能实现你的功能了:

在Form中分别放入ExcelApplication, ExcelWorkbook和ExcelWorksheet。
打开Excel
ExcelApplication1.Connect;
显示当前窗口:
ExcelApplication1.Visible[0]:=True;
更改 Excel 标题栏:
ExcelApplication1.Caption := '应用程序调用 Microsoft Excel';
添加新工作簿:
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add(EmptyParam,0));
添加新工作表:
var Temp_Worksheet: _WorkSheet;
begin
Temp_Worksheet:=ExcelWorkbook1.
WorkSheets.Add(EmptyParam,EmptyParam,EmptyParam,EmptyParam,0) as _WorkSheet;
ExcelWorkSheet1.ConnectTo(Temp_WorkSheet);
End;
打开已存在的工作簿:
ExcelApplication1.Workbooks.Open (c:\a.xls
EmptyParam,EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,0)
设置第2个工作表为活动工作表:
ExcelApplication1.WorkSheets[2].Activate; 或
ExcelApplication1.WorksSheets[ 'Sheet2' ].Activate;
给单元格赋值:
ExcelApplication1.Cells[1,4].Value := '第一行第四列';
拷贝整个工作表:
ExcelApplication1.ActiveSheet.Used.Range.Copy;
拷贝指定区域:
ExcelApplication1.ActiveSheet.Range[ 'A1:E2' ].Copy;
从A1位置开始粘贴:
ExcelApplication1.ActiveSheet.Range.[ 'A1' ].PasteSpecial;
从文件尾部开始粘贴:
ExcelApplication1.ActiveSheet.Range.PasteSpecial;
插入一行或一列:
a. ExcelApplication1.ActiveSheet.Rows[2].Insert;
b. ExcelApplication1.ActiveSheet.Columns[1].Insert;
删除一行或一列:
a. ExcelApplication1.ActiveSheet.Rows[2].Delete;
b. ExcelApplication1.ActiveSheet.Columns[1].Delete;
打印预览工作表:
ExcelApplication1.ActiveSheet.PrintPreview;
打印输出工作表:
ExcelApplication1.ActiveSheet.PrintOut;
工作表保存:
if not ExcelApplication1.ActiveWorkBook.Saved then
ExcelApplication1.ActiveSheet.PrintPreview;
工作表另存为:
ExcelApplication1.SaveAs( 'C:\Excel\Demo1.xls' );
放弃存盘:
ExcelApplication1.ActiveWorkBook.Saved := True;
关闭工作簿:
ExcelApplication1.WorkBooks.Close;
退出 Excel:
ExcelApplication1.Quit;
ExcelApplication1.Disconnect;
growtech
2011-01-22 · 超过42用户采纳过TA的回答
知道小有建树答主
回答量:162
采纳率:0%
帮助的人:112万
展开全部
Tform1.btn1click(sender:Tobject);
var
label1:TLabel;
begin
label1:=TLabel.create(Form2);
with label1 do begin
left:=32;
top:=32;
caption:='例子';
name:='label1';
end;
end;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
9967114
2011-01-22
知道答主
回答量:48
采纳率:0%
帮助的人:30.6万
展开全部
Form2中写个方法:
procedure CreateLabel ;
var
label:TLabel;
begin
label:=TLabel.create(self);
label.left:=10;
label.top:=10;
label.caption:='label';
end;
然后在Form1中引入Form2的单元
button下写Forms.CreateLabel;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
超越的局限
2011-01-22 · 超过35用户采纳过TA的回答
知道答主
回答量:95
采纳率:0%
帮助的人:81.7万
展开全部
有一个简单办法:先隐藏控件,在单击的时候显示即可。
例如:先设置他的visible属性为False.
在按钮里添加如下代码:label1.Visible := True;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式