Query控件为什么会丢失事件?(100分)

J

jonics

Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序里面经常会莫名其妙的丢失一些设计时候已经挂上的事件,
比如我明明已经定义了Query1控件的AfterScroll事件,写了代码 ,下次打开时候会发
现Query1的AfterScroll事件是空的,但是定义的代码还在,又需要重新挂上去,害得我不得不自己手动写
:Query1.AfterScroll:=Query1AfterScroll

不知道怎么回事,各位大虾有没有碰到过?

还有一个问题,为什么每次delphi都自动把我所有的edit,dbgrid的imeName设置成为中文的(有时候不小心打开了中文输入法),但是我没有手动去设置呀!
有没有什么办法禁掉他???

分不多,希望大家帮我弄明白这个问题,下班后来看,先谢谢各位了!
 
你查查 有没有Query1.AfterScroll=nil,之类的语句
 
1.tedit,tdbgrid修改它们的imename,imenmode就行了,
2.完颜康说的有道理.
 
我以前也为此一筹莫展,后来废了这个单元,并将该单元的事件代码逐一贴到新的单元里来
问题解决了。但没找到原因
 
Delphi有时是怪怪的,搞不清楚为什么
只能多试试
必要的时候,重新建一个工程,或者重新建那个单元
 
楼上各位的热情回答我非常感谢!
我试过了,我挂上事件后立即保存,我肯定delphi已经把信息写到了dfm文件中!编译出来的程序没有问题!
有时候,我再打开的时候,事件和对象已经脱离了!这点令我非常恼火,因为它时好时
坏,有时候明明我调试好的程序,等到别人做测试的时候就出了问题,就为这个,我吃
了不少苦头!

我在data moudle的create事件里手工写好就可以了!问题虽然已经解决了,但是我想弄明白到底是什么在做怪啊!

 
很奇怪,没见过。
是不是一直都是这样啊,还是近段时间?

我怀疑是delphi 没装好的问题。
或者是delphi 文件不完整。
 
告诉你我这里是没有问题的

所以不是delphi的bug

应该找别的原因
 
告诉你我这里是没有问题的
所以不是delphi的bug
应该找别的原因

我这也有这个问题,我的同事也发现这个问题,我们用的都是正版的DELPHI5.
所以我觉得这是DELPHI的BUG!!!。我们经常会遇到这样的问题,明明是已经连
好了DB控件的DATASOURCE了,也保存了,但下次打开的时候DB控件的DATASOURCE就
没有了,也就是被清空了!!!我们不得不再连一次。但这个问题不是总发生的。
到现在也没有找到好的办法,只有象jonics说的手写。有时写的CREAT中是不行的。
因为的FORM CREAT时,有的控件可能还没CREAT,这样就会报错,我们一般写在ONSHOW中。
 
delphi5有这个问题,delphi6就没有了
 
有个大师级的人物教过怎么理解这个问题。
新建一个同样的好用的。
点窗体,以文本方式查看,对比文件内容。
就会看到问题所在。
 
我碰到过这种问题,但一般出现在继承窗口里或使用ACTIVEX控件的事件里
继承的窗口如果母窗口后来有改动,子窗口有些事件就绑定丢失。
还有,我出现这个问题一般都发生在DEBUG时出现什么异常,最后是结束任务或什么方式退出整个
程序并关闭DELPHI的。
至于说源文件有什么不同,很简单,就是DFM文件里控件的描述段里少了事件描述。
object Button1: TButton
Left = 272
Top = 112
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click //就是这句!
end
 
想想我的描述问题和我用的环境,确实如onedot所说,我是用了继承。看来问题就是在
这了。
 
我也用了继承,而且经常用ctrl+F2退出调试!
我大多数程序也很正常,只是少数有这个问题!我想也许真的是delphi5做得不够好吧!
 
>>我想也许真的是delphi5做得不够好吧!
深有感触。大家可以看看我提问的两个问题。真有点受不了D5 有时候好 有时候不好的
毛病。。。
 
结帖了,谢谢各位!
 
揭贴不结分呀?!呵呵
 

我辛辛苦苦分配了分数的呀,怎么没有结呢?
:(

第一次结贴,忘记选择下面的那个选项了!
 
顶部