我的程序为什么不能调试,不能设断点???在线等待...

hot3000 2003-04-22 03:50:26
我在主程序中高了两个断点。()
程序如下:
application.CreateForm(tfrpsize,frpsize);//设断点处
//主程序调用子程序。 大概有几十个窗体。
frpsize.Showmodal;//设断点处

我按Ctrl+F9 程序编译成功.

但是当我按F9后 刚才设断点处的两个断点变成 打"叉"的断点。
程序运行后不会在断点处停下。 断点失效了。

先关闭delphi ,再打开delphi
但是我在新建一个工程序文件. 在窗体上放一个 button 并在onclick 里写代码。
在设几个断点。 这次这个断点可以。

为什么先前的那个断点不行? 如何调试程序?
...全文
253 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
hot3000 2003-04-25
  • 打赏
  • 举报
回复
问题 解决了, 新建一个工程 然后把每个单元重新uses 进来就可以了
多谢各位关心.
hot3000 2003-04-23
  • 打赏
  • 举报
回复
to 所有人:
1): 以下两行代码是在 按钮的 onclick 事件里写的。只有这两句.
application.CreateForm(tfrpsize,frpsize);//设断点处
//主程序调用子程序。 大概有几十个窗体。tfrpsize是窗体类继承自Tform
//frpsize 是Tfrpsize的对象;
frpsize.Showmodal;//设断点处
2): 奇怪的是我新建一个工程. 工程里有两个窗体如:form1和frpsize
然后在form1的一个按钮的onclick里写上:
application.CreateForm(tfrpsize,frpsize);//设断点
frpsize.Showmodal;//设断点
这时以上这两句可以设断点。 运行时可以在断点处停住.

Black爷 2003-04-22
  • 打赏
  • 举报
回复
我认同blueshu(绝对是菜鸟)的说法,DELPHI认为不会执行代码设断点会打X。
tobelost 2003-04-22
  • 打赏
  • 举报
回复
加一個按鈕,調用你設有斷點的過程或函數,
如果斷點有效則說明你設的斷點沒有被調用

另,設好的斷點如果紅點內有打叉,說明是沒有被調用
也就是說根本沒有運行到斷點
blueshu 2003-04-22
  • 打赏
  • 举报
回复
打"叉"的断点,说明程序不会执行到那儿
dabaicai 2003-04-22
  • 打赏
  • 举报
回复
你的那两行代码写在什么位置?(哪个事件?)
rlongriver 2003-04-22
  • 打赏
  • 举报
回复
俺不是高手,打"叉"的断点,说明程序不会执行到那儿,断点应该能设
帮你UP
diabloqin 2003-04-22
  • 打赏
  • 举报
回复
不明白,关注
simonzone 2003-04-22
  • 打赏
  • 举报
回复
"叉" 说明编译器没有执行这条语句.

比如你写了个函数:

function myfunc:boolean; //声明
....



function Tform1.myfunc: boolean; //实现
begin
........
result:=true;
end;

但你没有在某个地方调用这个函数,那么编译器不会执行到这个函数.

如果你在一个事件里,假如:
procedure Tform1.click(sender: Tobject);
begin
if self.myfunc then
......

end;

那么就执行到了.




hot3000 2003-04-22
  • 打赏
  • 举报
回复
csdn 的高手到哪去了。难道都出差了。
怎么没有人回答我???
hot3000 2003-04-22
  • 打赏
  • 举报
回复
我在第一个程序中用了很多第三方控件。
不知道是不是这个原因才导致不能设断点。

5,930

社区成员

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

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