XE10.3初试

秋天之落叶 2018-12-11 12:04:33
虽然水平不咋地,但还是喜欢尝尝新鲜的玩意,10.3注册成功,又得到了支持的Ehlib9.3版本,就把一个项目转了进来,结果却很恶心。
1、10.3好像就是应付差事的,控件条在使用过程跳来跳去的,一会置顶一会又居中,这可是在自动的变化啊,难道人工智能的思维设计在delphi的10.3得以实现了?
还有就是退出调试画面时,代码页面一阵乱颤,然后窗口又一阵哆嗦,最后回复正常,然后就是控件条竟然变出新的花样了,哈哈哈,神奇啊。
tools中调整属性的数据表,竟然是固定大小的,而且很小,不随拉伸而改变大小,闹呢?
2、语法不兼容但却找不到原因:
with Sender as TCheckListBox do
begin
Items.Insert(ItemAtPos(Point(X, Y), False), str); //这句提示错误
......
end;
语法提示和原来的一样,参数也一样,类型也一样,就是编译不过去,我晕。
3、由于XLSReadWriteII暂不支持,只好装上office 2000控件,然后就是各种红线,什么add、range不兼容属性,add修改成insert后竟然可以编译?
搜了几个网上使用Excel.application的,基本上都不能用了,但都能编译过去,不能运行。
excel被改的一团糟,心情也不好了。
不过单纯的使用DBgrideh形成excel确实没问题,就是不能使用Excel.application的属性调整表格,郁闷...
4、视觉不好,每次编译运行前,都会有红线出现,你以为是BUG,找半天却看不出问题,编译运行竟然没有问题,什么情况?
用的内容不多,暂时发现这些问题,还是很不爽。
我想,明天还是用回10.2吧!
...全文
2468 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuxin6110 2019-04-03
  • 打赏
  • 举报
回复
看了这个帖子,决定先不升了。还是老实呆在 10.2上
德尔菲 2019-03-20
  • 打赏
  • 举报
回复
XE10.3没有找到你说的Enviromental Options选项,在哪个菜单下面?
秋天之落叶 2018-12-13
  • 打赏
  • 举报
回复
提示:XE10.3使用Ehlib v.9.2.029出现BUG,在TabSheet使用DBDateTimeEditEh控件,选择日期后TabSheet会自动隐藏(关闭),以为是哪里关联了,新添加一个日期控件,选择日期后照样退出TabSheet。form上直接使用DBDateTimeEditEh没有这个问题。退回到9.1.024版本后没有这个问题。
另外,XE10.3下使用Ehlib v.9.1.024,不管是ado.close还是delete,均没有出现“rolstartvispos can't be > rollen”的错误。
秋天之落叶 2018-12-12
  • 打赏
  • 举报
回复
至于XLSReadWriteII,修改了版本号,还是不知道在哪里编译,直接install packages不行, 谁来详细的说明一下?
秋天之落叶 2018-12-12
  • 打赏
  • 举报
回复
秋天之落叶 2018-12-12
  • 打赏
  • 举报
回复
引用 25 楼 BlueStorm 的回复:
这个是编译好的,你到盒子里面去下载5.2的来用吧

非常感谢,盒子已经没有这个版本了,从其它网站下载了一个,编译通过安装成功,本帖无分容后再补,哈哈!
为什么6以后的版本都没有源码了,哈
JinShanYeLang 2018-12-12
  • 打赏
  • 举报
回复
还没下载试用
秋天之落叶 2018-12-12
  • 打赏
  • 举报
回复
引用 16 楼 BlueStorm 的回复:
如果你要确定Point(X, Y)用的是哪一个模块的函数,你可以把光标移到point上,Delphi就会显示这个函数的来源;

是的是的,加上system.types后就没问题了。
BlueStorm 2018-12-12
  • 打赏
  • 举报
回复
如果你要确定Point(X, Y)用的是哪一个模块的函数,你可以把光标移到point上,Delphi就会显示这个函数的来源;
BlueStorm 2018-12-12
  • 打赏
  • 举报
回复
你的程序,如果在10.3通不过,那么在10.2也应该通不过才对。
BlueStorm 2018-12-12
  • 打赏
  • 举报
回复
这个是编译好的,你到盒子里面去下载5.2的来用吧
秋天之落叶 2018-12-12
  • 打赏
  • 举报
回复
引用 13 楼 BlueStorm 的回复:
(1)在我的Win10+Delphi10.3编译你11楼的程序,完全没有问题。
你把Str改为AStr看看能不能通过编译.

(2)关于旧版XLSReadWriteII在Delphi 10.3安装的问题,你只要把AxCompilers.inc文件打开,在该文件内容的最前面,加上下面的代码,编译和安装都没有问题,真的是非常简单,最多一分钟就可以搞定:
{$ifdef ver330}
{$define D10_3}
{$define D10_2}
{$define D10_1}
{$define D10}
{$define XE8}
{$define XE7}
{$define XE6}
{$define XE5}
{$define XE4}
{$define XE3}
{$define XE2}
{$define DELPHI_DX10_3_OR_LATER}
{$define DELPHI_DX10_2_OR_LATER}
{$define DELPHI_DX10_1_OR_LATER}
{$define DELPHI_DX10_OR_LATER}
{$define DELPHI_XE8_OR_LATER}
{$define DELPHI_XE7_OR_LATER}
{$define DELPHI_XE6_OR_LATER}
{$define DELPHI_XE5_OR_LATER}
{$define DELPHI_XE4_OR_LATER}
{$define DELPHI_XE3_OR_LATER}
{$define DELPHI_XE2_OR_LATER}
{$define DELPHI_XE_OR_LATER}
{$define DELPHI_2010_OR_LATER}
{$define DELPHI_2009_OR_LATER}
{$define DELPHI_2007_OR_LATER}
{$define DELPHI_2006_OR_LATER}
{$define DELPHI_7_OR_LATER}
{$define DELPHI_6_OR_LATER}
{$define DELPHI_5_OR_LATER}
{$endif}

我已经确定了,在excel2000中可能也有point函数,所以编译的时候point(X,Y)格式不对,system.types.point(X,Y)就没问题了,哈哈
你说的第二个我去试一试,我记得我的文件中是 {$define D10},没有10_1,还以为是通用的。
秋天之落叶 2018-12-12
  • 打赏
  • 举报
回复
只有这几种文件类型:



秋天之落叶 2018-12-12
  • 打赏
  • 举报
回复
尝试着下载了6.0的几个版本,都是2、30M大小,都没有工程文件,无法装载编译。
BlueStorm 2018-12-12
  • 打赏
  • 举报
回复
package目录里面没有项目文件吗?
BlueStorm 2018-12-12
  • 打赏
  • 举报
回复
(1)在我的Win10+Delphi10.3编译你11楼的程序,完全没有问题。 你把Str改为AStr看看能不能通过编译. (2)关于旧版XLSReadWriteII在Delphi 10.3安装的问题,你只要把AxCompilers.inc文件打开,在该文件内容的最前面,加上下面的代码,编译和安装都没有问题,真的是非常简单,最多一分钟就可以搞定: {$ifdef ver330} {$define D10_3} {$define D10_2} {$define D10_1} {$define D10} {$define XE8} {$define XE7} {$define XE6} {$define XE5} {$define XE4} {$define XE3} {$define XE2} {$define DELPHI_DX10_3_OR_LATER} {$define DELPHI_DX10_2_OR_LATER} {$define DELPHI_DX10_1_OR_LATER} {$define DELPHI_DX10_OR_LATER} {$define DELPHI_XE8_OR_LATER} {$define DELPHI_XE7_OR_LATER} {$define DELPHI_XE6_OR_LATER} {$define DELPHI_XE5_OR_LATER} {$define DELPHI_XE4_OR_LATER} {$define DELPHI_XE3_OR_LATER} {$define DELPHI_XE2_OR_LATER} {$define DELPHI_XE_OR_LATER} {$define DELPHI_2010_OR_LATER} {$define DELPHI_2009_OR_LATER} {$define DELPHI_2007_OR_LATER} {$define DELPHI_2006_OR_LATER} {$define DELPHI_7_OR_LATER} {$define DELPHI_6_OR_LATER} {$define DELPHI_5_OR_LATER} {$endif}
秋天之落叶 2018-12-12
  • 打赏
  • 举报
回复
引用 20 楼 BlueStorm 的回复:
我是在盒子下载的XLSReadWriteII,保存于D:\XLSReadWriteII v5.20.62 For Berlin目录,如下图所示:
安装vcl组件,应该是每个使用delphi的人都应该学会的吧。

难怪啊,我还以为有别的方法呢,我下载的文件中没有工程文件,奇怪哦!
BlueStorm 2018-12-12
  • 打赏
  • 举报
回复
我是在盒子下载的XLSReadWriteII,保存于D:\XLSReadWriteII v5.20.62 For Berlin目录,如下图所示: 用delphi打开XLSReadWriteIID10_1.dproj, 如下图所示: 右击上图的XLSReadWriteIID10_1.bpl, 点击“Compile" 再右击XLSReadWriteIID10_1.bpl, 点击“Install" 最后Delphi主菜单 -> Options ->Enviromental Options -> delphi Options -> Library -> Library Path ,如下图所示 点击右面的...,, 就会出现下图 把D:\XLSReadWriteII v5.20.62 For Berlin\Win32\Release填写到中间的窄框,然后点击Add按钮,接着点击OK按钮退出。 安装vcl组件,应该是每个使用delphi的人都应该学会的吧。
秋天之落叶 2018-12-11
  • 打赏
  • 举报
回复
引用 5 楼 BlueStorm 的回复:
你的代码在我的10.3里编译完全没有问题,你看一下你的代码里有没有下面的东西:
var
Str: String;

procedure TForm1.CheckListBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
var
i: Integer;
str: string;
begin
TCheckListBox(Sender).DragMode := dmAutomatic;
for i := TCheckListBox(Sender).Items.Count - 1 downto 0 do
begin
if (TCheckListBox(Sender).Selected[i]) and (TCheckListBox(Sender).ItemEnabled[i] = True) then
begin
with Sender as TCheckListBox do
begin
str := Items[i];
Items.Delete(i);
end;
with Sender as TCheckListBox do
begin
Items.Insert(ItemAtPos(Point(X, Y), False), str);
end;
end;
end;
end;
有点邪门,昨天晚上家里的win10没有编译过去,刚才单位win7试了一下,过去了,哈哈,晚上回家再试一试。
  • 打赏
  • 举报
回复
引用 4 楼 秋天之落叶 的回复:
[quote=引用 3 楼 BlueStorm 的回复:]
(2)可能就是你没有定义过Str,没有定义过Str时,Str就是System.Str。应该定义一下:var Str: String
(3)如果你有XLSReadWriteII的源代码,简单修改一下就可以适应Delphi 10.3了

(2)10.2编译顺利,拿到10.3就是过不去,哈哈
(3)不过你说的3我倒是想试一试,哈哈
[/quote]

先clean一下,再save all,build...
加载更多回复(10)

828

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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