貼上代碼。大神們,我想用timer控制,但是除錯不出來了。能給個詳細的代碼嗎
unit ;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.ComCtrls,
Data.DB, Data.Win.ADODB;
type
TForm1 = class(TForm)
ListView1: TListView;
Label1: TLabel;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
Panel1: TPanel;
CheckBox5: TCheckBox;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Memo1: TMemo;
RadioButton5: TRadioButton;
RadioButton6: TRadioButton;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
Button4: TButton;
Label2: TLabel;
Timer1: TTimer;
procedure Button1Click(Sender: TObject);
procedure Memo1Change(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
TempColumn:TListColumn;
TempItem:TListItem;
begin
begin
Timer1.Enabled:=false;
with adoquery1 do
begin
close;
ADOConnection1:=TADOConnection.Create(nil);
Adoconnection1.LoginPrompt:=false;
ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data.mdb;Persist Security Info=False';
adoquery1.Connection := ADOConnection1;
SQL.Clear;
SQL.add('select * from 旺旺號');
Open;
end;
for i:=0 to adoquery1.FieldCount-1 do
begin
TempColumn:=self.ListView1.Columns.Add;
TempColumn.Caption:=adoquery1.Fields[i].FieldName;
end;
adoquery1.First;
while not adoquery1.Eof do
begin
TempItem:=self.ListView1.Items.Add;
TempItem.Caption:=adoquery1.Fields[0].AsString;
for i:=1 to adoquery1.FieldCount-1 do
begin
TempItem.SubItems.Add(adoquery1.Fields[i].AsString);
end;
adoquery1.Next;
end;
Timer1.Enabled:=false;
end;
end;
//顯示在listview1
procedure TForm1.Button3Click(Sender: TObject); //保存
var
mylist:TstringList ;
n,i: integer;
str,tem:string;
begin
if listview1.Items.Count>0 then
begin
try
mylist:=TStringlist.Create;
for n := 0 to listview1.Items.Count - 1 do begin
str:='';
for i := 0 to listview1.Items.Item[n].SubItems.Count -1 do
begin
tem:=listview1.Items.Item[n].SubItems.Strings[i];
if (tem ='') then tem:='####';
if (str='') then str:=tem
else str:=str+'+' +tem;
end;
mylist.Add(str);
end;
showmessage(mylist.Text) ;
mylist.SaveToFile('d:\123.txt');
finally
Mylist.Free;
end;
end
else begin
application.MessageBox('沒有資料可以匯出!','提示資訊',MB_OK+MB_Iconinformation);
end;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
listview1.Items.Clear;
end;
procedure TForm1.Memo1Change(Sender: TObject); //按鈕真偽
begin
if not(memo1.Lines.Text = '') then
begin
Button1.Enabled:=true;
end
else
begin
Button1.Enabled:=false;
end;
end;
end.
uj5u.com熱心網友回復:
Timer1的處理事件你沒寫呀。你沒用對Timer1的。
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
TempColumn:TListColumn;
TempItem:TListItem;
begin
begin
Timer1.Enabled:=false;
with adoquery1 do
begin
close;
ADOConnection1:=TADOConnection.Create(nil);
Adoconnection1.LoginPrompt:=false;
ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data.mdb;Persist Security Info=False';
adoquery1.Connection := ADOConnection1;
SQL.Clear;
SQL.add('select * from 旺旺號');
Open;
end;
for i:=0 to adoquery1.FieldCount-1 do
begin
TempColumn:=self.ListView1.Columns.Add;
TempColumn.Caption:=adoquery1.Fields[i].FieldName;
end;
adoquery1.First; //資料準備好,到第一條記錄 ,上面代碼是你自己的
Timer1.Interval:=1000; //定時執行,每秒一次。
Timer1.Enabled:=true; //啟動定時器
end;
end;
//定時 的事件要寫代碼的
procedure TFormMain.Timer1Timer(Sender: TObject);
begin
//如果沒到資料庫尾,就加一行
if not adoquery1.Eof then
begin
TempItem:=self.ListView1.Items.Add;
TempItem.Caption:=adoquery1.Fields[0].AsString;
for i:=1 to adoquery1.FieldCount-1 do
begin
TempItem.SubItems.Add(adoquery1.Fields[i].AsString);
end;
adoquery1.Next; //準備好下次使用
end
else
Timer1.Enabled:=false; //沒資料了,就不再執行定時任務、
end;
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/11200.html
標籤:數據庫相關
上一篇:PaddleHub口罩檢測?
下一篇:delphi10的資料庫問題
