chmenf087 发表于 2012-12-19 18:56:00

【更新】支持slb文件格式 显示Sld的控件(40楼后源码)



         在lisp中用惯了sld幻灯片的我在.net中往往很是纠结,不得不反反复复的调整视图来截屏就为了制作一个提示的图片
Oh No,我只想说受够了,好吧我承认有activeX的slide控件不过呢我这个人在.net中就是不喜欢用activeX的东西,至于原因么
就在于他需要注册,制作一个程序后给他人使用总是要反反复复注册。老麻烦了。
      好了言归正传,sld文件是的一种幻灯片文件,而其文件格式则相对简单见下面


(图片可能看不清楚)
就是CAD目录下 acad_dev.chm帮助文档内。
知道了存储格式那么读出来还不是小case!
好了为了方便使用我把它做成自定义控件了,可以在.net的箱中添加此控件
像picturebox一样拖出来用就可以
自定义的属性
FilePath 此为sld文件路径
BlackBGround此为黑底显示
KeepRatio   此为保持幻灯片长宽比仅长或宽布满(否则会拉伸图片布满整个控件)
KeepMid   是否居中显示幻灯片(仅当KeepRatio=true时才有效)



--------------------------------------------------------------------------------------------------------------------
2012-12-23更新
支持slb幻灯片库文件可取的slb中sld文件名称即使自己记不住里面有什么文件亦可轻松取得
修改前版布局,修改属性的同事不在同步刷新控件,属性修改完成后提供startDraw方法手动刷新
增加一些属性键入时带提示,不过我弄成English了看不懂的用有道吧(最近想要练一下英语)╮(╯▽╰)╭
使用slb文件例子
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
      NetSlide1.FilePath = "H:\netSlide\tk.slb"
      NetSlide1.KeepRatio = True
      NetSlide1.KeepMid = True
      NetSlide1.BlackBGround = True
      NetSlide1.SldNameInSlbList = "SHT"
      NetSlide1.StartDraw()
      ListBox1.Items.AddRange(NetSlide1.QuerySLDListInSLB.ToArray)
    End Sub
效果图:
压缩包已更新


更新

MTC 发表于 2019-9-27 14:34:00

还没到40楼嘛真是够了

MTC 发表于 2019-4-19 09:48:00

不知道是不是C#源码

gyl 发表于 2012-12-19 22:19:00

沙发!支持楼主的创作,等有了币再来下载。

河伯 发表于 2012-12-19 23:10:00

创意很好。不过要注意,Autodesk原计划从AutoCAD 2014开始取消对slide文件的支持,mslide命令将生成WMF文件。现在这一计划推迟,估计到AutoCAD 2016实施。

sieben 发表于 2012-12-20 09:22:00

学习了

zhengjian211 发表于 2012-12-21 20:04:00

已经实现!
期待楼主源码,还有slb格式

chmenf087 发表于 2012-12-23 14:57:00


晕了更新的时候不知道怎么多点了一个这两个附件需要下后面一个(ps:不晓得怎么删除多余的,我编辑上面显示只有一个==

chmenf087 发表于 2012-12-23 15:00:00

),各位抱歉了

pucx 发表于 2012-12-24 00:04:00


啊,这个倒是不晓得,要是直接生成wmf文件的话就不用什么其他控件了,图片框就够了
不过以前生成的slb也不能丢了哇,嘿嘿
页: [1] 2
查看完整版本: 【更新】支持slb文件格式 显示Sld的控件(40楼后源码)