不知怎么了,程序运行时,一点ComboBox就会出现violation错误,地址是00404398、00404144,最后结尾的地址是00000080。不点就没事。新建一个程序,在窗体上加个ComboBox没事。
还有怪事:如动态建一个Panel肯定出错,但先在窗体上放一个Panel再动态建Panel就没事了,即使删除窗体上的Panel。
delphi7是专业版的。
还有怪事:如动态建一个Panel肯定出错,但先在窗体上放一个Panel再动态建Panel就没事了,即使删除窗体上的Panel。
delphi7是专业版的。
解决方案 »
- 在image上绘制是怎么擦除(异或方式得到的不是想要的结果)
- 如图dxdbgrid表头合并
- 如何监测一个应用程序中有哪些窗体被打开
- 如何调出一个指定路径的目录窗口(系统的,如我的电脑,资源浏览器等)。
- ACCESS中取记录的请几条怎么用啊,TOP n is over???
- 能否用ShellExecute函数调用当前运行程序目录中的一个Word文档
- 请问Delphi6.0怎么注册?
- 急,在线等候:如何利用delphi自带excelchart控件做出曲线。也即做出图表
- 谁知道哪有《Rational Rose从入门到精通》和《UML参考手册》这两本电子书下载?我给22分
- delphi ex 做的项目,在Windows上需要安装类似.net framework的框架么
- 求动态更换程序图片思路和方法(高手进)
- 请高手帮忙注释这段程序
我是按照网上找的方法自定义了一个提示过程:当鼠标移到某DBEdit上时显示提示,而提示又是从另一个表中得到的。去掉这个提示过程就一切正常。我想是不是这个过程调用太频繁了,而造成内存方面的问题。我有一个解决方法(不一定行),就是当鼠标在DBEdit上停留1.5秒再调用这个过程,估计就没事了,但不会弄。
procedure TForm2.DisplayHint(Sender: TObject);
var
ctrl : TWinControl;
AQhint:TADOQuery;
begin
ctrl := FindVCLWindow(Mouse.CursorPos) ;
if ctrl <> nil then
if ctrl is TDBEdit then
begin
tpxm := TDBEdit(ctrl).Text;
jsh := TDBEdit(ctrl).Tag;
end;
if tpxm<>'' then
begin
AQhint:=TADOQuery.Create(Application);
AQhint.Connection:=ADOConnection1;
AQhint.Close;
AQhint.SQL.Clear;
AQhint.SQL.Add('select pgjb from xrsfxpgb');
AQhint.SQL.Add('where (xm=:xm) and (szjs=:szjs)');
AQhint.Parameters.ParamByName('xm').Value:=tpxm;
AQhint.Parameters.ParamByName('szjs').Value:=jsh;
AQhint.Open; if AQhint.FieldByName('pgjb').AsString<>'' then
ctrl.Hint:=AQhint.FieldByName('pgjb').AsString
else
if AQhint.FieldByName('pgjb').AsString='' then
ctrl.Hint:='无内容;
end
else
ctrl.Hint:='';
end;
在窗体建立时还有一行代码:Application.OnHint := DisplayHint;
过程中无论AQhint是不是动态建立,都会产生问题。
不知那位大虾能解决这个问题,本人万人感激。