- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试使用 Visio 2010 COM Interops 以编程方式创建时间轴和标记。我的代码基于 Chris Castillo 的两部分博客文章(Part 1、Part 2),这是我能够找到的关于如何执行此操作的唯一半完整示例。然而,他的博客(从 2004 年开始)似乎无法正常工作。里程碑并没有真正连接到时间轴,更新它们的日期并不能使它们移动到正确的位置。
有什么建议或修复吗?
Imports Microsoft.Office.Interop.Visio
Imports System.Diagnostics.CodeAnalysis
Imports System.Runtime.InteropServices
...
Dim VisioApp As New Application
Dim myDoc As Document = VisioApp.Documents.Add("")
Dim myPage As Page = myDoc.Pages.Item(1)
Dim TimelineStencils As Document =
VisioApp.Documents.Add("Timeline Shapes.vss")
Dim theTimeline As Shape
Dim theMilestone As Shape
VisioApp.AlertResponse = 1
theTimeline = myPage.Drop(
TimelineStencils.Masters.ItemU("Block timeline"), 5.610236, 5.511811)
theTimeline.CellsU("User.visBeginDate").FormulaU = _
VisioApp.ConvertResult(
"1/1/2004", VisUnitCodes.visDate, VisUnitCodes.visInches)
theTimeline.CellsU("User.visEndDate").FormulaU = _
VisioApp.ConvertResult(
"12/31/2004", VisUnitCodes.visDate, VisUnitCodes.visInches)
VisioApp.Addons("ts").Run("/cmd=3")
theMilestone = myPage.Drop( _
TimelineStencils.Masters.ItemU("Line milestone"), _
5.610236, 5.511811)
theMilestone.CellsU("User.visMilestoneDate").FormulaU = _
VisioApp.ConvertResult(
"7/1/2004", VisUnitCodes.visDate, VisUnitCodes.visInches)
VisioApp.AlertResponse = 0
最佳答案
在 Visio 2010 上针对内置模板(“TIMELN_M.VSS”)和模板运行 Chris 的代码,我发现它运行良好。但是,如果您针对带有空白文档的内置模板运行它,则不会显示描述和日期形状数据字段。这两个字段的可见性取决于 Document ShapeSheet 中的用户单元格(“User.visTLShowProps”)要么由插件添加,要么在删除其中一个主人时添加。
标准模板包含两个persistent events在插件中为 DocumentCreated 和 DocumentOpened 调用功能,并且再次添加几个其他用户单元格用于打开和关闭上述值,或者它们存在于模板中。在任何情况下,如果您不使用原始模板,这些都不会添加到文档 ShapeSheet。
这意味着您需要自己切换值。例如(一个快速的 VBA 示例):
Private Sub SetTlShowProps(ByRef vDoc As Visio.Document)
If (Not vDoc Is Nothing) Then
Dim docShp As Visio.Shape
Set docShp = vDoc.DocumentSheet
If (docShp.CellExistsU("User.visTLShowProps", 0)) Then
docShp.CellsU("User.visTLShowProps").FormulaU = 1
End If
End If
End Sub
或者,您当然可以将这些“推送”单元格添加到您自己的 ShapeSheet 文档模板中:
User.visTLShowPropsOn = SETF(GetRef(User.visTLShowProps),1)
User.visTLShowPropsOff = SETF(GetRef(User.visTLShowProps),0)
如果这不能解决您的问题,最后一点是,您是否使用了不同的或派生的模板(“Timeline Shapes.vss”)?
关于c# - 如何以编程方式将里程碑拖放到 Visio 中的 block 时间轴上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12588810/
我有一个带有 H264 身份验证的 RTSP 流的 URL - MPEG-4 第 10 部分编解码器。 Lik 看起来像这样:rtsp://login:pass@xxx.xxx.xxx.xxx:557
我正在开发移动应用程序。现在,我将访问 token 放在SharedPrefences上。我想问一下SharedPrefences上的存储访问 token 是否安全?如果没有,最好的做法是在哪里放置访
一个 UITableView,它有 20 行的 UITableViewCell,每一行都有一个按钮,单击按钮我想将 UITableViewCell 放到 UITableView 的底部。 是否有任何委
我有这样的代码。我删掉了所有的细节,但是这个文本区域会在按下按钮后发生变化,而它所做的只是改变了文本区域。没有添加滚动。我什至尝试将滚动策略设置为始终,但它返回错误。此面板将添加到另一个带有 Bord
我想在 NSString 中有 src="字符。 但我不能这样做,因为 "是 Objective C 的一部分。 我想这样做: NSString * name = [ [NSString alloc]
非常新手的问题,我是 html 的新手,特别是 highcharts 的东西。所以首先,我制作了这个 test.php 来显示图表。 Highcharts Exampl
如何将我的 fab 放在我的 fragment 上?请帮助我收到错误,例如。 android.view.InflateException: Binary XML file line #13: Erro
我已经完成了一个unity的迷你游戏,名为“penguins_test”。我导出了 2 个文件: penguins_test.html penguins_test.unity3d 现在,我想使用 Go
有谁知道如何将 uiviewcontroller(或只是 View )添加到 cocos2d 层上? 最佳答案 是这样的: [[CCDirector sharedDirector].view addS
我知道您可以采取一些技巧,将 HTML 元素放在 Silverlight 应用程序的顶部,但这无法全屏显示。有没有办法在 Silverlight 应用程序中显示 html 页面? 最佳答案 http:
从 Golang 教程中我不清楚如何将 Golang 代码放到 Github 以便以后能够从 Github 将该代码作为包导入。 这是来自 Golang 教程 http://golang.org/do
我围绕 Pygame 构建了我的整个游戏,并想把它放到 Steam 上。最后我了解到我需要 OpenGL 支持才能运行 Steam 的叠加层。初始化显示的代码: screen = pygame.dis
我需要将已编译的 apk 文件复制到作业 artifats,以便在成功时能够直接从作业页面下载它。 现在我已经在文件夹 build/apk/MyProject-release.apk 中编译了 apk
我愿意在本地和 Heroku 上处理不同的设置。所以我在 settings.py 的末尾使用了这个导入: try: from local_settings import * except Im
我是安卓新手。这个问题是我尝试使用 Android 应用程序和 Web 服务的步骤中的一个阶段。我之前问过一个问题,在这里:Fail to connect android to web service
我是 Git 新手。我刚刚在我的计算机上创建了一个 Git 存储库。现在我想将该存储库连接到网站 (GitHub) 并将我的代码推送到那里。 我该怎么做?我有点熟悉......我必须以某种方式将在线代
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: How to use an existing database with an Android applic
如何在浏览器选项卡上显示标签名称? :( 帮我我想将我的标签显示为选项卡,有什么技巧吗? 技巧 - ABC 技巧 - 最佳答案 是的,您可以使用 在浏览器选项卡中显示标签名称 示例标题代码:
我需要 Tomcat 上的 JAX-WS 运行时。 把“jax-ws/lib/*”放到“tomcat/lib”里可以吗? 如果将 jax-ws/lib 放入 tomcat/lib,是否需要 Tomca
我已经在Win10系统中安装了hadoop-2.5.2和eclipse neon.1a,但是我把“hadoop-eclipse-plugin-2.5.2.jar”放到/eclipse/plugins后
我是一名优秀的程序员,十分优秀!