以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  编译过后发现几个问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=163349)

--  作者:lhfu
--  发布时间:2021/4/24 10:24:00
--  编译过后发现几个问题
各位老师,我用foxtable编译过后的软件,在本机打开后,功能区的图片是正常显示的:


图片点击可在新窗口打开查看此主题相关图片如下:截屏图片01.jpg
图片点击可在新窗口打开查看

但拷贝到其它电脑后,打开,功能区的图片显示不正常的:


图片点击可在新窗口打开查看此主题相关图片如下:截屏图片.jpg
图片点击可在新窗口打开查看

我在项目事件AfterOpenProject里,代码是这么写的:


Dim C1Ribbon2 As C1Ribbon.C1Ribbon  = Ctype(BaseMainForm.controls("C1Ribbon1"),C1Ribbon.C1Ribbon )

Dim d As New system.Windows.Forms.WebBrowser

d.Navigate("http://i.tianqi.com/index.php?c=code&id=12&icon=1&num=5&site=12")\'天气预报

Dim c As New C1Ribbon.RibbonControlHost(d)

c.name = "自定义项2"

c.width = 300

c.height = 120

C1Ribbon2.tabs("engga").Groups("功能组3").Items.add(c)


Dim C1Ribbon1 As C1Ribbon.C1Ribbon  = Ctype(BaseMainForm.controls("C1Ribbon1"),C1Ribbon.C1Ribbon )

Dim a As New system.Windows.Forms.picturebox

a.BackgroundImage = getimage("E:\\管理项目1\\Images\\01.png")\'图片

a.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch

Dim b As New C1Ribbon.RibbonControlHost(a)

b.name = "自定义项1"

b.width = 300

b.height = 120

C1Ribbon1.tabs("engga").Groups("功能组4").Items.add(b) 


Dim C1Ribbon3 As C1Ribbon.C1Ribbon  = Ctype(BaseMainForm.controls("C1Ribbon1"),C1Ribbon.C1Ribbon )

Dim g As New system.Windows.Forms.picturebox

g.BackgroundImage = getimage("E:\\管理项目1\\Images\\02.jpg")\'图片

g.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch

Dim f As New C1Ribbon.RibbonControlHost(g)

f.name = "自定义项3"

f.width = 260

f.height = 120

C1Ribbon3.tabs("engga").Groups("功能组6").Items.Insert(0,f)


但它是会报错:

.NET Framework 版本:4.0.30319.42000

Foxtable 版本:2020.5.29.8

错误所在事件:项目,AfterOpenProject

详细错误信息:

索引超出范围。必须为非负值并小于集合大小。

参数名: index


但我把这段更改后,C1Ribbon3.tabs("engga").Groups("功能组6").Items.Insert(0,f)改为C1Ribbon3.tabs("engga").Groups("功能组6").Items.Insert(f)后,也出现错误代码:


图片点击可在新窗口打开查看此主题相关图片如下:截屏图片3.jpg
图片点击可在新窗口打开查看

以上这两处地方应该更正,请指教一下


第二个问题,我在功能区设置一个显示时间的,并在AfterOpenProject事件写下代码:


RibbonTabs("engga").Groups("功能组5").Items("标签1").text = "今天是:" & format(Date.now, "G")


然后并在计划任务里增加一个代码:

RibbonTabs("engga").Groups("功能组5").Items("标签1").text = "今天是:" & format(Date.now, "G")


重新打开后,虽然时间是对得上了,但返回编辑时系统一样会报错:



图片点击可在新窗口打开查看此主题相关图片如下:截屏图片4.jpg
图片点击可在新窗口打开查看



图片点击可在新窗口打开查看此主题相关图片如下:截屏图片5.jpg
图片点击可在新窗口打开查看


这三个问题请各位老师帮忙指导一下,谢谢.

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目_202104240828.zip



图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20210424102825.png
图片点击可在新窗口打开查看









[此贴子已经被作者于2021/4/24 10:28:47编辑过]

--  作者:有点蓝
--  发布时间:2021/4/24 11:09:00
--  
1、其它电脑不存在这个路径的文件,要保证每台电脑的路径一致:getimage("E:\\管理项目1\\Images\\01.png"),没孩子改相对路径,把图片放到项目里的images文件夹,然后这样用:getimage("01.png")

2、用Items.add,不使用Items.Insert,麻烦理解一下代码,不要就会抄

3、判断一下菜单是否存在再用:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=163079&skin=0

--  作者:lhfu
--  发布时间:2021/4/26 0:16:00
--  
蓝老师,第3个问题,我顺着网页摸索一阵,已经在菜单项建立相应的名称,但对于这行代码在哪里安置却无从下手,请指导一下,谢谢.
--  作者:有点蓝
--  发布时间:2021/4/26 9:08:00
--  
什么代码?