请各位高手多多指教啊
解决方案 »
- 一个字符串2001-9-9-0001,在加“1”后,变成2001-9-9-0002,依此类推,2001-9-9-0099,在加“1”后,变成2001-9-9-0100,该如何做
- 想写两个函数.1,执行SQL语句的公共函数.2,执行存储过程的公共函数
- 祝愿天下地女性同胞们节日快乐!
- 指针是不是就是地址?最好举例说明,越详细越好,谢谢
- 十万火急!问一个关于SOCKET的问题
- 如何取字符串中一段
- Delphi自己带的例子,看不明白,请大家指点!顶者有分!!
- 请教各位大虾:怎么才能卸载掉动态生成的FRAME?
- 采用MDAC2.7 执行以下过程退出时会出错,但采用MDAC2.1 却是对的。请指教!
- 在WINDOWS2000下如何隐藏在进程列表中的进程?
- 用delphi+access2000可以用BDE吗?
- 这样的查询怎么写,请关注!!
在这里回复同样加分,总计120分http://expert.csdn.net/Expert/topic/2038/2038668.xml?temp=.9269831http://expert.csdn.net/Expert/topic/2038/2038174.xml?temp=.8178369
你应该引用DataSet吧
不过可以这样var DBGrid2 : TDBGrid;
begin
DBGrid2 := TDBGrid.Create(self);
DBGrid2 := Form1.DBGrid1;
DBGrid2.Parent := self;
end;
就Ok了
我做的是打印,用frprintgrid打印dbgrid,因为要打印多个窗体的dbgrid,所以需要动态设置frprintgrid的dbgrid,也就是说,不论哪一个dbgrid要打印,只需调用我的两个打印单元就行了,但是怎样才能将要打印的dbgrid传过去呢,也许还有别的思路,帮忙值点一下吧,明天就要交工了,谢谢!
//该单元用来实现打印字段的选择及打印时间、报表标题的设置
unit Unit_print_sel;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, CheckLst, ComCtrls, Grids, DBGrids, FR_PTabl;type
TForm_print_sel = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
CheckListBox1: TCheckListBox;
Label3: TLabel;
edit2: TEdit;
DateTimePicker: TDateTimePicker;
Button2: TButton;
Button3: TButton;
Button1: TButton; procedure FormCreate(Sender: TObject);
procedure DateTimePickerCloseUp(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
dbgrid_print:tdbgrid;
{ Public declarations }
end;var
Form_print_sel: TForm_print_sel;
implementation//uses中的内容需要添加所有需要打印的单元
//需要声明所有dbgrid所在的单元文件
uses
unit_client, unit_print_change; //unit_client是要打印的dbgrid所在的单元
{$R *.dfm} procedure TForm_print_sel.FormCreate(Sender: TObject);
var
i:integer;
begin//时间设定
form_print_sel.DateTimePicker.DateTime:=now;
form_print_sel.edit2.Text:= datetostr(form_print_sel.DateTimePicker.date);
for i:=0 to form__client.dbgrid1.Columns.Count-1 do
////form__client.dbgrid1需要动态改变////
begin//在 CheckListBox1中添加 item ////form__client.dbgrid1需要动态改变////
form_print_sel.CheckListBox1.Items.Add(form__client.dbgrid1.Columns[i].Title.Caption);
form_print_sel.CheckListBox1.Checked[i]:=false;
end;end;//设置打印时间
procedure TForm_print_sel.DateTimePickerCloseUp(Sender: TObject);
begin
form_print_sel.edit2.Text:=datetostr(form_print_sel.DateTimePicker.date);
end;
//确定按钮的实现
procedure TForm_print_sel.Button1Click(Sender: TObject);
begin
form_print_change.ShowModal;
end;
//全选按钮的实现
procedure TForm_print_sel.Button2Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to form_print_sel.CheckListBox1.Items.Count-1 do
begin
form_print_sel.CheckListBox1.Checked[i]:=true;
end;
end;//关闭按钮的实现
procedure TForm_print_sel.Button3Click(Sender: TObject);
var
i:integer;
begin//恢复CheckListBox1的初始状态
for i:=0 to form_print_sel.CheckListBox1.Items.Count-1 do
begin
form_print_sel.CheckListBox1.Checked[i]:=false;
end;
form_print_sel.Edit1.Text:='';//关闭窗体
form_print_sel.Close;
end;
//回车当tab
procedure TForm_print_sel.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
begin
if key=#13 then
begin
key:=#0;
perform(WM_NEXTDLGCTL,0,0);
end;
end;
end;end.