为什么这个赋值语句是错误的?

秋天之落叶 2024-12-15 21:02:11

XLS.Sheets[0].Range.Items[i, n, i, n].BorderOutlineStyle := cbsThin;

XLS.Sheets[0].Range.ItemsRef['B1:D4'].BorderOutlineStyle := cbsThick;

我查了网上的很多案例,而且这值在pas中确实是枚举值,但在D12中却提示错误,[dcc32 Error] Unit7.pas(158): E2003 Undeclared identifier: 'cbsThin'

是不是我查询的结果是错误的?应该怎么写?

type TXc12CellBorderStyle = (cbsNone,cbsThin,cbsMedium,cbsDashed,cbsDotted,
                             cbsThick,cbsDouble,cbsHair,cbsMediumDashed,
                             cbsDashDot,cbsMediumDashDot,cbsDashDotDot,
                             cbsMediumDashDotDot,cbsSlantedDashDot);

...全文
271 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
秋天之落叶 2024-12-16
  • 打赏
  • 举报
回复

请教一下,如何能使添加XLSreadwritell5时,自动添加Xc12DataStyleSheet5?
我在XLSreadwritell5源码中加入Xc12DataStyleSheet5后,重新build并安装后,还是不能自动加入?应如何操作?

  • 举报
回复
@秋天之落叶 应该把单元加入设计时包的contains部分就可以了。
秋天之落叶 2024-12-16
  • 举报
回复
@日立奔腾浪潮微软松下联想 看了看Xc12DataStyleSheet5.pas在contains中,不知为什么就是不能自己添加,而颜色属性是xc12utils5单元,不用添加就可以使用,不知道哪里的问题?
  • 举报
回复
@秋天之落叶 你看一下这个XLS是什么类,点进声明它的那个单元,在inteface部分的uses里加入Xc12DataStyleSheet5,然后重新build包
5条回复
秋天之落叶 2024-12-16
  • 打赏
  • 举报
回复

添加 XLSreadwritell5时,Xc12DataStyleSheet5为什么不自动添加?这个如何解决?
我重新卸载,然后重新编译安装,还是不行。

秋天之落叶 2024-12-16
  • 打赏
  • 举报
回复

换个思路,我把这句放进自带的实例中,就没有问题?
看了看引用单元,原来是没有自动引用 Xc12DataStyleSheet5 单元导致的,我晕。

  • 打赏
  • 举报
回复

应该是代码声明type TXc12CellBorderStyle的地方启用了带作用域的枚举({$SCOPEDENUMS ON}),所以你需要写:
XLS.Sheets[0].Range.Items[i, n, i, n].BorderOutlineStyle := TXc12CellBorderStyle.cbsThin;

秋天之落叶 2024-12-16
  • 举报
回复
@日立奔腾浪潮微软松下联想 试过这个,错误提示一样
  • 举报
回复
@秋天之落叶 build一下,如果还不行就是没有引用某些单元
秋天之落叶 2024-12-16
  • 举报
回复
@日立奔腾浪潮微软松下联想 全中!确实是没有引用,还有手动加进去,我晕
秋天之落叶 2024-12-16
  • 打赏
  • 举报
回复

而且VerticalAlignment=chaleft等属性均设置提示错误,
BorderOutlinecolor:=0;却不提示错误。
不解?

5,908

社区成员

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

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