DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: webb123
今日帖子: 33
在线用户: 15
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 xiaoxingliang1 (xiaoxingliang1) ★☆☆☆☆ -
普通会员
2020/9/16 19:56:22
标题:
Control has no parent window 浏览:1369
加入我的收藏
楼主: DLL插件框架,用的Delphi10.3.1,打开DLL中的窗体,点击一下ListView就报,关闭窗体也报错,在Release版本中报这个错,在Debug模式下正常,请问 有谁遇到过怎么解决?谢谢
此帖子包含附件:
PNG 图像
大小:49.6K
----------------------------------------------
-
作者:
男 dbyoung (dbyoung) ★☆☆☆☆ -
普通会员
2020/9/16 20:50:32
1楼: 当你用代码来控制显示一个控件,刚好此时这个控件处于隐藏状态或非激活状态,这时就会发生这种错误。

解决此错误的方法:
  1、设置父窗体的函数,不要用 DELPHI 自带的 setparent,
    用 WINDOWS API setparent 函数,可以规避这个错误;
    当然错误还存在。只是不会报错误。
  2、Release 版发也可以调试。这个就不用我说了吧;
  3、加日志,1、2、3、4、5,看执行到哪一步没有执行下去;
----------------------------------------------
武汉天气不好
作者:
男 xiaoxingliang1 (xiaoxingliang1) ★☆☆☆☆ -
普通会员
2020/9/16 21:38:33
2楼: 谢谢1楼,这么长的回复。
这个DLL窗体,就是一层一层拖控件,没有用到SetParent之类的。
编译成Release后代码都无法断点
----------------------------------------------
-
作者:
男 dbyoung (dbyoung) ★☆☆☆☆ -
普通会员
2020/9/16 21:59:04
3楼: 这样就可以调试了。
此帖子包含附件:
PNG 图像
大小:13.3K
----------------------------------------------
武汉天气不好
作者:
男 dbyoung (dbyoung) ★☆☆☆☆ -
普通会员
2020/9/16 22:00:33
4楼: 如果还不能调试,在加上这个。
此帖子包含附件:
PNG 图像
大小:11.5K
----------------------------------------------
武汉天气不好
作者:
男 xiaoxingliang1 (xiaoxingliang1) ★☆☆☆☆ -
普通会员
2020/9/16 22:54:52
5楼: 谢谢,调试可以。但是没有到断点就直接报上面说的这个错,断点就设在ListView单击事件的最前面一行。就是单击ListView中的一行就直接报错ListView的数据是已经正常加载出来了,不能单击它,它一获得焦点就报错。
此帖子包含附件:
PNG 图像
大小:385.4K
----------------------------------------------
-
作者:
男 xiaoxingliang1 (xiaoxingliang1) ★☆☆☆☆ -
普通会员
2020/9/17 1:14:56
6楼: 解决了,发现是Build With Runtime Package的问题,主程序和DLL都加上这个选项编译,再次谢谢了!
----------------------------------------------
-
作者:
男 kinneng (kinneng) ★☆☆☆☆ -
盒子活跃会员
2020/9/17 3:59:50
7楼: Delphi特有的老毛病,搜10几年前的帖子就明白了,不能带包编译,即楼上这个选项,程序发布给没有安装Delphi的机器时,要把运行包复制过去才能运行。
----------------------------------------------
声明:本人不在论坛询问任何编程问题,请不要将我的帖子当成问题来回答。炒股一天,编程三年,不浪费时间了。 经常在外面,没空,不要找我..
作者:
男 dbyoung (dbyoung) ★☆☆☆☆ -
普通会员
2020/9/17 5:39:21
8楼: 毛病在这里。找找你程序中,什么地方设置控件焦点。或者此控件根本就没有焦点。
此帖子包含附件:
PNG 图像
大小:68.5K
----------------------------------------------
武汉天气不好
作者:
男 pcplayer (pcplayer) ★☆☆☆☆ -
普通会员
2020/9/17 21:37:03
9楼: Build With Runtime Package  这个选项有点让人糊涂,以为是 build 的时候带上了 package,实际上是没带上,编译出来的 exe 特别小。然后把没有编译进去的库,那些 BPL 都拷贝安装到目标机器里面去。

我记得是这样。或许相反?很久没玩包编译了。
----------------------------------------------
-
作者:
男 19412008 (与月共舞) ★☆☆☆☆ -
盒子活跃会员
2020/9/18 1:03:15
10楼: Build With Runtime Package,带运行期包编译,听起来确实不好理解。勾选后实际上是指发布的程序EXE或DLL需要带包,否则程序不能运行;不勾选的话,就是独立的程序,不需要带bpl就可 在没有安装过Delphi的电脑上 运行
----------------------------------------------
作者:
男 xiaoxingliang1 (xiaoxingliang1) ★☆☆☆☆ -
普通会员
2020/9/18 9:43:18
11楼: 因为高版本分了Debug和Release,Debug下其实是勾选了这个选项的,但切换Release选项的时候,以为不用再勾了,没注意
----------------------------------------------
-
作者:
男 pcplayer (pcplayer) ★☆☆☆☆ -
普通会员
2020/9/18 12:17:07
12楼: 确实 debug 和 release 需要分别设置,比较麻烦。
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2020/9/18 12:40:58
13楼: 的确,这种 分别设置的地方太多了。
EMB 也懒得管。
比如 版本号。
如果 定义了太多的 工程配置,版本号都分别设置,很累。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 iamdream (银河恒久远,梦想无止境!) ★☆☆☆☆ -
大贡献会员
2020/9/18 14:28:22
14楼: 这个设置的确麻烦,建议先选“All configurations”来设置,这样细分的选项就可以从它继承了。
我们公司的一个老产品,有太多的程序,每次更新版本都是个不小的工程,即使写了一些小工具来升级版本信息,仍然时不时的出点问题。
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
作者:
男 kingofsun (小矮人酋长) ★☆☆☆☆ -
普通会员
2020/9/21 14:01:55
15楼: 这样你们才能显得更忙一点,不然领导怎么给你们打绩效
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行1914.063毫秒 RSS