- 01: 名前:とし投稿日:2004/10/22(金) 06:42
- VB6を使う場合の最初の一歩を教えてください
VBAで下記のソースで任意の場所に円を描いています。
Sub DrawMark(x, y)
Dim shapeObj As Visio.Shape
Set shapeObj = ActivePage.DrawOval((x - 8 / 25.4), (y - 8 / 25.4), (x + 8 / 25.4), (y + 8 / 25.4))
End Sub
これと同じことをVB6で実現するにはどんな手順が必要でしょうか?
- 05: 名前:とし投稿日:2004/10/23(土) 13:18
- VB6のサンプルを探していて
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_vis2003_ta/html/odc_vsprogrammingwithvisioactivexcontrol.asp [source] [check]
を見つけました。
試したところ
Dim vsoApplication As Visio.Application
Set vsoApplication = DrawingControl.Window.Application
をFormLoadに設定したところ
Set vsoApplication = DrawingControl.Window.Application
でオブジェクトが見つかりませんとなります。
どなたかこのページを試したかたはいませんか?
- 06: 名前:yoda投稿日:2004/10/23(土) 17:11
- 当たっているかどうか、わかりませんが、
drawing control って便利ですね。
初めて、さわって見ましたが、
特に何もしなくとも動きますよ。
たとえば、こんなんでも。
Private Sub Form_Load()
MsgBox Me.DrawingControl1.Document.Name
MsgBox Me.DrawingControl1.Document.Pages.Count
Me.DrawingControl1.Document.Pages.Add
End Sub
- 07: 名前:yoda投稿日:2004/10/23(土) 21:12
- まったく見当はずれかもしれませんが、
こんなこともできました。
Private appVso As Visio.Application
Private Sub Command1_Click()
Dim doc As Visio.Document, stn As Visio.Document
Set appVso = Me.DrawingControl1.Document.Application
Set doc = appVso.Documents.OpenEx("d:\my Documents\test0.vsd", visOpenCopy)
Set stn = appVso.Documents.OpenEx("d:\my Documents\stnTEST.vss", visOpenDocked)
End Sub
Private Sub Command2_Click()
appVso.ActiveDocument.SaveAsEx "d:\my Documents\test000.vsd", visSavePreviewDraft1st
End Sub
- 08: 名前:yoda投稿日:2004/10/24(日) 03:39
- でも、vb6から普通にvisioを起動するだけなら、
drawing controlより
visioのtype libraryを参照設定してから、
以下のようにする方が簡単ですが...
Private Sub Command1_Click()
Dim appVso As Visio.Application
Set appVso = CreateObject("Visio.application")
End Sub
- 09: 名前:とし投稿日:2004/10/24(日) 21:52
- 06と07は動きました。
08はvisioのtype libraryが見つからないためでしょうか・
Dim appVso As Visio.Applicationで、ユーザ定義型が見つかりません
となります。
CreateObject("Visio.application")はvisioが立ち上がってしまうのではないでしょうか・
だとすると、drawing controlで行きたいかと思います。
- 10: 名前:とし投稿日:2004/10/25(月) 07:06
- yodaさんお付き合いをありがとうございます。
visioのtype libraryは見つかりました。
やはりCreateObjectはvisioも立ち上がるようです。
drawcontrolを利用してのshapeを描く方法はわかるでしょうか?
*.vssからのペーストではなく、VBアプリケーションでの関数からの方法です。
- 11: 名前:yoda投稿日:2004/10/25(月) 07:12
- >type libraryが見つからないためでしょうか・
参照設定はしましたか?
>立ち上がってしまうのではないでしょうか・
visibleプロパティをfalse にすれば、立ち上がりません。
- 12: 名前:yoda投稿日:2004/10/25(月) 10:56
- .>drawcontrolを利用してのshapeを描く方法
基本的に同じだと思います。
HELPのメソッドの中の、DrawRect などに
使用例があります。
- 13: 名前:yoda投稿日:2004/10/25(月) 11:27
- その他、Drawing Controlについては、
HELPのオブジェクトのDrawing Controlオブジェクト
と、関連する項目を、熟読することをお勧めします。
そういう私は、読み出すと、すぐ眠くなってしまいます。
ひとに言う資格はないのですが。
■トップに戻る リロード 全レスを表示
|