使用 Visual Studio 顯示對話方塊

Visual Basic 2008 入門

  1. 如果您的電腦上還沒有安裝 Visual Basic 2008 Express,請從 Microsoft® 網站下載並進行安裝。該下載是免費的。
  2. 開啟 Visual Basic 2008 Express,然後建立類別庫類型的專案。
  3. 將該專案命名為 ClassLibrary1 (預設名稱),然後按一下「確定」。將您鍵入的名稱準確地記在一張紙上。此名稱後續在這些指令中十分重要。

    將顯示一個新視窗,「方案總管」位於該視窗的右上角。

  4. 在「方案總管」中,在該專案名稱上按一下右鍵並選取「加入」,然後從次功能表中選取「新增項目」。即顯示「加入新項目」對話方塊。
  5. 選取「對話方塊」樣板,然後按一下「加入」。

    即在「Windows Form 設計工具」中顯示對話方塊的圖形視圖。您可以使用此介面將控制項加入至對話方塊。

    螢幕左側的「工具箱」列示了您可以加入至對話方塊的控制項。對於此專案,請加入文字方塊以展示 Inventor 參數的值,並且可讓您編輯該參數。

  6. 從「工具箱」面板的「通用控制項」群組中按一下「文字方塊」,並將其拖曳至對話方塊中的灰色區域。您可以根據需要重新調整對話方塊的大小。
  7. 為該文字方塊加入標示,以展示參數名稱。
  8. 小心避開標示和文字方塊,按兩下對話方塊的背景以顯示程式碼編輯器。即顯示以下程式碼。
  9. 立即將游標移動至以下行下方 -
    Public Class Dialog1
  10. 加入此行 -
    Public d0 As Double
  11. 將游標置於子常式 OK_Button_Click 的頂部,Me.DialogResult... 陳述式的前面,然後按 Enter 以加入新行。
  12. 在新行上,加入 -
    d0 = TextBox1.Text

    您的程式碼顯示如下 -

  13. 使用「檔案」「儲存」或者「檔案」「全部儲存」儲存您的工作。

    現在,您基本可以建置專案了。當您執行建置作業時,Visual Basic 會建立 DLL 檔案。您可以透過修改建置作業的輸出路徑指定 Visual Basic 建立此檔案的位置。

  14. 按一下專案標題所在的頁籤,然後再次按一下「編譯」頁籤。輸出路徑為 -

    Program Files\Autodesk\Inventor {版本}\Bin\iLogicAdd\

  15. 若要建置專案,請在頂部的功能表中按一下「建置」頁籤。如果建置過程成功完成,則會在螢幕左下角的狀態列中顯示「建置成功」訊息。
  16. 使用「全部儲存」再次儲存您的工作,並開啟 Inventor。
  17. 使用「加入規則」建立名為 Form Rule 的規則,該規則由以下程式碼組成:
    AddReference "ClassLibrary1"
    Sub Main()
    dim dlg as new ClassLibrary1.Dialog1
    dlg.d0 = d0
    i = dlg.ShowDialog()
    if (i = vbOK)then
    d0 = dlg.d0
    end if
    End Sub
    註: 也可以使用「編輯規則」對話方塊的「精靈」頁籤上的「為對話方塊建立規則」建立此程式碼。

    此規則會將 Inventor 參數 d0 的目前值傳送給對話方塊,然後展示該對話方塊。使用對話方塊的使用者可以在對話方塊中編輯該值。如果該使用者按一下「確定」,則會將對話方塊中的值重新指定給該參數。

建立一個用於顯示和修改參數值的對話方塊

  1. 開啟 Visual Studio。
  2. 建立類別庫類型的專案。
  3. 在「方案總管」中,在該專案名稱上按一下右鍵,然後依次選取「加入」「新增項目」「對話方塊」。

    即在「Windows Form 設計工具」中顯示對話方塊的圖形視圖。您可以使用此介面將控制項加入至對話方塊。

  4. 按一下「檢視」「工具箱」以預覽可用的控制項。
  5. 如果您需要顯示 Inventor 參數值並進行編輯的功能,請加入文字方塊控制項。為每個文字方塊加入標示,以顯示參數名稱。
  6. 按兩下對話方塊的背景。

    程式碼編輯器顯示在名為 Dialog1_Load 的新子常式中。

  7. 在此子常式中,在子常式結尾前面加入此行 -
    TextBox1.Text = d0
  8. 將游標移動至以下行下方 -
    Public Class Dialog1
  9. 加入此行 -
    Public d0 As Double
  10. 在名為 OK_Button_Click 的子常式頂部加入此行 -
    d0 = TextBox1.Text

    現在您的程式碼顯示如下 -

    Imports System.Windows.Forms
    Public Class Dialog1
    Public d0 As Double 
    Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click  
      d0 = TextBox1.Text
      Me.DialogResult = System.Windows.Forms.DialogResult.OK
      Me.Close()
    End Sub
    Private Sub Cancel_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel_Button.Click
      Me.DialogResult = System.Windows.Forms.DialogResult.Cancel  
      Me.Close()
    End Sub
    Private Sub Dialog1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       TextBox1.Text = d0
    End Sub
    End Class
  11. 建置專案,並使用「檔案」「全部儲存」儲存專案。

建置專案的同時會建立一個 DLL。您可以:

以下範例規則使用對話方塊:

AddReference "ClassLibrary1"
Sub Main()
dim dlg as new ClassLibrary1.Dialog1
dlg.d0 = d0
i = dlg.ShowDialog()
if (i = vbOK) then
d0= dlg.d0
end if
End Sub

此規則會將 Inventor 參數 d0 的目前值傳送給對話方塊,然後展示該對話方塊。使用對話方塊的使用者可以在對話方塊中編輯該值。如果該使用者按一下「確定」,則會將對話方塊中的值重新指定給該參數。

可以自動產生類似的對話方塊程式碼。在「編輯規則」對話方塊中,選取「精靈」頁籤,然後選取「為對話方塊建立規則」。