Symfoware/RDBのデータベースに接続または切断するアプリケーションを例にして、Visual Basic.Netによるアプリケーションの作成方法を説明します。なお、以下の手順は、Visual Studio 2017を使用しています。
2つのコマンドボタンをフォームに貼り付けます。
貼り付けたコマンドボタンの各[Text]プロパティに“接続”、“切断”と設定します。
フォームをダブルクリックし、「Form1.Designer.vb*」タブを開きます。
「Form1.Designer.vb*」に、以下のサンプルコードを入力します。
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _ Partial Class Form1 Inherits System.Windows.Forms.Form '外部参照可能な変数の宣言 Dim Con As ADODB.Connection
'フォームがコンポーネントの一覧をクリーンアップするために dispose をオーバーライドします。 <System.Diagnostics.DebuggerNonUserCode()> _ Protected Overrides Sub Dispose(ByVal disposing As Boolean) …省略 'Windows フォーム デザイナーで必要です。 Private components As System.ComponentModel.IContainer 'メモ: 以下のプロシージャは Windows フォーム デザイナーで必要です。 'Windows フォーム デザイナーを使用して変更できます。 'コード エディターを使って変更しないでください。 <System.Diagnostics.DebuggerStepThrough()> _ Private Sub InitializeComponent() …省略 '1. ADODB.Connectionオブジェクトの生成と設定 Con = New ADODB.Connection() Con.ConnectionString = "DSN=checkRDB;UID=ADMINISTRATOR;PWD=symfo000@admin;"
End Sub
フォーム上の[接続]ボタンをダブルクリックして、カーソルが移動した場所に以下のサンプルコードを入力します。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click On Error GoTo ErrorProc Con.Open() MsgBox("接続できました", MsgBoxStyle.OkOnly, "接続完了") Button2.Enabled = True Button1.Enabled = False Exit Sub ErrorProc: 'Error時の処理を記述 MsgBox("", MsgBoxStyle.OkOnly, "Error") End Sub
フォーム上の[切断]ボタンをダブルクリックして、カーソルが移動した場所に以下のサンプルコードを入力します。
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click Con.Close() Con = Nothing MsgBox("切断しました", MsgBoxStyle.OkOnly, "切断完了") Button2.Enabled = False Button1.Enabled = True Hide() Close() End Sub
以上でサンプルコードの作成は終了です。
メニューの[デバッグ]-[デバッグ開始]を選択するとアプリケーションを実行できます。
以下は上記で入力した全ソースです。
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _ Partial Class Form1 Inherits System.Windows.Forms.Form '外部参照可能な変数の宣言 Dim Con As ADODB.Connection 'フォームがコンポーネントの一覧をクリーンアップするために dispose をオーバーライドします。 <System.Diagnostics.DebuggerNonUserCode()> _ Protected Overrides Sub Dispose(ByVal disposing As Boolean) Try If disposing AndAlso components IsNot Nothing Then components.Dispose() End If Finally MyBase.Dispose(disposing) End Try End Sub 'Windows フォーム デザイナーで必要です。 Private components As System.ComponentModel.IContainer 'メモ: 以下のプロシージャは Windows フォーム デザイナーで必要です。 'Windows フォーム デザイナーを使用して変更できます。 'コード エディターを使って変更しないでください。 <System.Diagnostics.DebuggerStepThrough()> _ Private Sub InitializeComponent() Me.Button1 = New System.Windows.Forms.Button() Me.Button2 = New System.Windows.Forms.Button() Me.SuspendLayout() ' 'Button1 ' Me.Button1.Location = New System.Drawing.Point(12, 127) Me.Button1.Name = "Button1" Me.Button1.Size = New System.Drawing.Size(237, 164) Me.Button1.TabIndex = 0 Me.Button1.Text = "接続" Me.Button1.UseVisualStyleBackColor = True ' 'Button2 ' Me.Button2.Location = New System.Drawing.Point(332, 127) Me.Button2.Name = "Button2" Me.Button2.Size = New System.Drawing.Size(237, 164) Me.Button2.TabIndex = 1 Me.Button2.Text = "切断" Me.Button2.UseVisualStyleBackColor = True ' 'Form1 ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 12.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(581, 382) Me.Controls.Add(Me.Button2) Me.Controls.Add(Me.Button1) Me.Name = "Form1" Me.Text = "Form1" Me.ResumeLayout(False) '1. ADODB.Connectionオブジェクトの生成と設定 Con = New ADODB.Connection() Con.ConnectionString = "DSN=checkRDB;UID=ADMINISTRATOR;PWD=symfo000@admin;" End Sub Friend WithEvents Button1 As Button Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load Button2.Enabled = False End Sub Friend WithEvents Button2 As Button Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click On Error GoTo ErrorProc Con.Open() MsgBox("接続できました", MsgBoxStyle.OkOnly, "接続完了") Button2.Enabled = True Button1.Enabled = False Exit Sub ErrorProc: 'Error時の処理を記述 MsgBox("", MsgBoxStyle.OkOnly, "Error") End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click Con.Close() Con = Nothing MsgBox("切断しました", MsgBoxStyle.OkOnly, "切断完了") Button2.Enabled = False Button1.Enabled = True Hide() Close() End Sub End Class