VisualBasicサンプル
下記のコードをはじめとしたVisualBasicのサンプルプログラムも付属していますので、それらを参考にすることで、スムーズに開発に取りかかっていただけます。例1)VoiCeコアモジュールの起動、各種設定、ファイルの読み込み
Private Sub Form_Load()
Dim bRet As Boolean
If gVoiCeObj Is Nothing = False Then
Exit Sub
End If
On Error Resume Next
Set gVoiCeObj = GetObject("", "VoiCeAPI.Document")
If Err <> 0 Then
Set gVoiCeObj = CreateObject("VoiCeAPI.Document")
End If
On Error GoTo 0
'VoiCeコアモジュール起動
Call gVoiCeObj.OGPAppShow
'VoiCeウィンドウの位置とサイズを設定
Call gVoiCeObj.OGPMoveWindow(0, 0, 800, 600)
' 最大化
bRet = gOGPObject.OGPShowWindow(SW_MAXIMIZE)
'ウィンドウタイトルセット
Call gVoiCeObj.OGPSetTitle("サンプル")
'背景色設定
Call gVoiCeObj.OGPSetBackColor(RGB(255, 255, 255))
'画面表示(カラー/モノクロ/原図のみモノクロ)設定
Call gVoiCeObj.OGPViewMono(1)
'DXFファイルの読み込み
bRet = gVoiCeObj.OGPOpenDocument(App.Path & "¥sample.dxf")
If bRet = True Then
'ビューのフィット
Call gVoiCeObj.OGPViewFit()
End If
End Sub
例2)マークアップ、朱書き要素の作成
Private Sub btnCreateControl_Click()
Dim bRet As Boolean
If gVoiCeObj Is Nothing Then
Exit Sub
End If
'マークアップ/朱入れ作成モードへの切り替え
bRet = gVoiCeObj.OGPChangeViewMode(VIEW_MODE_CONTROL)
'マークアップの種類設定
Call gVoiCeObj.OGPSetControlKind(CONTROL_MUCIRCLE)
'マークアップの色設定
Call gVoiCeObj.OGPSetControlColor(RGB(0, 0, 255))
'マークアップの文字列設定
Call gVoiCeObj.OGPSetControlString("文字列")
End Sub
↓
----------------------------
画面上でマークアップを作成
----------------------------
↓
' 作成後に起こるイベントに対する処理
Private Sub VOICEEVENT_OGPCtrlCreate()
'--------------------------
' マークアップ作成後の処理
'--------------------------
End Sub
例3)要素の認識、要素属性の変更
Private Sub btnGroupSelect_Click()
Dim bRet As Boolean
If gVoiCeObj Is Nothing Then
Exit Sub
End If
'グループ選択モードへの切り替え
bRet = gVoiCeObj.OGPChangeViewMode(VIEW_MODE_CLICK_GROUP)
End Sub
↓
--------------------------------
画面上でマークアップをクリック
--------------------------------
↓
'クリック後に起こるイベントに対する処理
Private Sub VOICEEVENT_OGPSelectGroup()
Dim bRet As Boolean
If gVoiCeObj Is Nothing Then
Exit Sub
End If
'選択されたオブジェクトを検索
bRet = gVoiCeObj.OGPBeginSelectObjectSearch
'選択されたオブジェクトの文字列を変更
bRet = gVoiCeObj.OGPSetSelectCtrlString("文字列")
'選択されたオブジェクトの色設定
bRet = gVoiCeObj.OGPSetSelectColor(RGB(0, 0, 255))
End Sub
例4)印刷設定、印刷の実行
Private Sub btnPrintDirect_Click()
If gVoiCeObj Is Nothing Then
Exit Sub
End If
'用紙方向の設定
Call gVoiCeObj.OGPSetPrintDirection(DMORIENT_LANDSCAPE)
'用紙サイズの設定
Call gVoiCeObj.OGPSetPaperSize(DMPAPER_A4)
'印刷マージンの設定
Call gVoiCeObj.OGPSetPrintMargin(10, 10, 10, 10)
'印刷範囲の設定
Call gVoiCeObj.OGPSetPrintRange(1)
'直接印刷の実行
Call gVoiCeObj.OGPPrint(1)
End Sub
Private Sub btnPrintSetting_Click()
Dim intRet As Integer
If gVoiCeObj Is Nothing Then
Exit Sub
End If
'印刷設定ダイアログの表示
intRet = OGPPrintSetupW(CLng(Me.hwnd))
End Sub
Private Sub btnPrint_Click()
If gVoiCeObj Is Nothing Then
Exit Sub
End If
'印刷ダイアログの表示
Call OGPPrintW(CLng(Me.hwnd))
End Sub



