看看代码,问题在哪里??

tongki 2002-08-19 04:03:27
我想当移动记录指针时,EDIT里的内容也跟着改变。(不用DBEDIT)。
如何得到正解?

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, Grids, DBGrids, ADODB, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
ADOTable1: TADOTable;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ADOTable1MoveComplete(DataSet: TCustomADODataSet;
const Reason: TEventReason; const Error: Error;
var EventStatus: TEventStatus);
procedure DBGrid1ColumnMoved(Sender: TObject; FromIndex,
ToIndex: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOTable1.Next;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ADOTable1.Prior;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
ADOTable1.open;
ADOTable1.First;
edit1.text:=ADOTable1.Fieldbyname('dm').asstring;
edit2.text:=ADOTable1.fieldbyname('mc').asstring;
end;

procedure TForm1.ADOTable1MoveComplete(DataSet: TCustomADODataSet;
const Reason: TEventReason; const Error: Error;
var EventStatus: TEventStatus);
begin
// edit1.text:=ADOTable1.Fieldbyname('dm').asstring;
// edit2.text:=ADOTable1.fieldbyname('mc').asstring;
end;

procedure TForm1.DBGrid1ColumnMoved(Sender: TObject; FromIndex,
ToIndex: Integer);
begin
edit1.text:=ADOTable1.Fieldbyname('dm').asstring;
edit2.text:=ADOTable1.fieldbyname('mc').asstring;
end;

end.

...全文
100 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hhzqf1980 2002-08-19
  • 打赏
  • 举报
回复
当然你可以在dbgrid的单击事件中写啊
edit1.text:=ADOTable1.Fieldbyname('dm').asstring;
edit2.text:=ADOTable1.fieldbyname('mc').asstring;
prosectinfo 2002-08-19
  • 打赏
  • 举报
回复
AfterScroll Event 在数据集发生滚动时执行,例如从一条记录移动到另一条记录时,这个事件会自动执行。
你的这段代码 就是用来记录发生变化时,用edit1,edit2显示记录的代码和名称。(如果你用的是TDBedit,数据集滚动时会自动显示,这个事件就用不着了)
tongki 2002-08-19
  • 打赏
  • 举报
回复
我找到了,不过以上的事件是有什么用处?要是有中文的HELP,DELPHI也就有天地了

procedure TForm1.ADOTable1AfterScroll(DataSet: TDataSet);
begin
edit1.text:=ADOTable1.Fieldbyname('dm').asstring;
edit2.text:=ADOTable1.fieldbyname('mc').asstring;
end;
tongki 2002-08-19
  • 打赏
  • 举报
回复
有一个例子,不过是STRINGGRID的。

The following code displays the number of rows a row was moved in a label.

procedure TForm1.StringGrid1RowMoved(Sender: TObject; FromIndex, ToIndex: Longint);

begin
Label1 := IntToStr(Abs(FromIndex-ToIndex));

end;

内容概要:本文围绕“【SCUC】N-1故障集+安全约束机组组合研究(Matlab代码实现)”展开,系统探讨电力系统在N-1故障场景下的安全约束机组组合(SCUC)问题,旨在实现系统安全性与运行经济性的协同优化。研究通过构建包含机组启停、出力计划、潮流约束、备用容量及N-1安全准则的数学模型,结合混合整数线性规划等优化算法,利用Matlab平台完成仿真求解,并引入YALMIP等建模工具提升建模效率。文档提供了完整的代码实现方案与测试案例,涵盖故障集的生成与处理方法,帮助用户掌握鲁棒性和分布鲁棒优化的基本思想,适用于电力系统安全校核与调度决策支持。; 适合人群:电力系统及相关专业的研究生、从事电力调度、能源优化的科研人员及工程技术人员。; 使用场景及目标:① 掌握N-1安全准则在机组组合中的建模方法与实现流程;② 开展安全约束机组组合(SCUC)与安全约束经济调度(SCED)的仿真分析;③ 利用Matlab/YALMIP快速搭建电力系统优化模型并进行求解与验证。; 阅读建议:建议读者结合文档内容与网盘提供的完整资源(含代码与数据),动手实践建模与调试过程,重点关注约束条件的设定、故障场景的枚举与处理策略,同时参考相关文献深化对鲁棒优化与分布鲁棒方法的理解。

5,943

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧