کد دایرکتوری دفتر تلفن با VB.NET
در این بخش، ما به بررسی نحوه ایجاد یک دایرکتوری دفتر تلفن با استفاده از VB.NET خواهیم پرداخت. این برنامه به کاربران این امکان را میدهد که اطلاعات مربوط به تماسهای خود را ذخیره و مدیریت کنند.
۱. راهاندازی پروژه
ابتدا، یک پروژه جدید در Visual Studio ایجاد کنید. از نوع "Windows Forms App" انتخاب کنید. پس از ایجاد پروژه، یک فرم طراحی کنید که شامل کنترلهای مورد نیاز باشد.
۲. کنترلهای مورد نیاز
در فرم، کنترلهای زیر را اضافه کنید:
- TextBox: برای وارد کردن نام و شماره تلفن.
- Button: برای اضافه کردن اطلاعات به دایرکتوری.
- ListBox: برای نمایش لیست تماسها.
- Button: برای حذف تماسها.
۳. نوشتن کد
حالا به نوشتن کد بپردازید. در زیر نمونهای ساده از کد برای این منظور آورده شده است.
```vb.net
Public Class PhoneDirectory
Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
Dim name As String = txtName.Text
Dim phoneNumber As String = txtPhone.Text
If Not String.IsNullOrWhiteSpace(name) AndAlso Not String.IsNullOrWhiteSpace(phoneNumber) Then
lstContacts.Items.Add(name & " - " & phoneNumber)
txtName.Clear()
txtPhone.Clear()
Else
MessageBox.Show("لطفا نام و شماره تلفن را وارد کنید.")
End If
End Sub
Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
If lstContacts.SelectedIndex <> -1 Then
lstContacts.Items.RemoveAt(lstContacts.SelectedIndex)
Else
MessageBox.Show("لطفا یک تماس را انتخاب کنید.")
End If
End Sub
End Class
```
۴. توضیحات کد
- در این کد، ما دو دکمه داریم. دکمه اول برای اضافه کردن تماس و دکمه دوم برای حذف تماس انتخاب شده است.
- وقتی کاربر نام و شماره تلفن را وارد میکند و دکمه "اضافه کردن" را فشار میدهد، اطلاعات به `ListBox` اضافه میشود.
- همچنین، اگر کاربر دکمه "حذف" را فشار دهد، تماس انتخاب شده از لیست حذف خواهد شد.
۵. نتیجهگیری
ایجاد یک دایرکتوری دفتر تلفن با VB.NET بسیار ساده است. با استفاده از کنترلهای فرم و دستورات شرطی، میتوانیم یک برنامه کاربردی طراحی کنیم. این برنامه میتواند به راحتی گسترش یابد و ویژگیهای بیشتری به آن اضافه شود، مانند ذخیرهسازی اطلاعات در پایگاه داده.
امیدوارم این توضیحات برای شما مفید باشد! اگر سوال دیگری دارید، خوشحال میشوم کمک کنم.
کد دایرکتوری دفتر تلفن با VB.NET: راهنمای کامل و جامع
در این مقاله قصد داریم به صورت مفصل و جامع درباره ساخت یک برنامه دفتر تلفن با زبان برنامهنویسی VB.NET صحبت کنیم. هدف اصلی، طراحی یک برنامه ساده ولی کارآمد است که بتواند اطلاعات تماس افراد را مدیریت کند. این برنامه شامل امکانات افزودن، ویرایش، حذف و جستوجوی مخاطبین است. پس بیایید شروع کنیم و قدم به قدم این پروژه را بررسی کنیم.
پیش نیازهای پروژه
قبل از هر چیزی، باید محیط توسعه Visual Studio را نصب کنید. همچنین، نیازمند یک بانک اطلاعاتی ساده هستید؛ میتوانید از دیتابیس SQL Server یا حتی از فایلهای متنی برای ذخیره سازی استفاده کنید. در اینجا، فرض بر این است که از دیتابیس SQL Server استفاده میکنیم، چون امکانات بیشتر و امنیت بالاتری دارد.
طراحی پایگاه داده
در ابتدا، باید یک جدول برای ذخیره اطلاعات تماس ایجاد کنیم. ساختار جدول ممکن است به شکل زیر باشد:
CREATE TABLE Contacts (
ID INT PRIMARY KEY IDENTITY(1,1),
Name NVARCHAR(100),
Phone NVARCHAR(20),
Email NVARCHAR(100),
Address NVARCHAR(255)
)
در این ساختار، هر مخاطب یک شناسه یکتا دارد و اطلاعات اصلی مانند نام، شماره تماس، ایمیل و آدرس در آن ذخیره میشود.
طراحی فرم کاربری (UI)
در ویژوال استودیو، یک فرم جدید با نام MainForm طراحی کنید. این فرم باید شامل عناصر زیر باشد:
- DataGridView برای نمایش لیست مخاطبین
- TextBox ها برای وارد کردن نام، شماره تماس، ایمیل و آدرس
- چند Button برای عملیات مختلف: افزودن، ویرایش، حذف، جستوجو
کدهای ارتباط با بانک اطلاعاتی
برای ارتباط با دیتابیس، باید از SqlConnection، SqlCommand و SqlDataAdapter استفاده کنید. در ادامه، نمونه کدهایی برای عملیات مختلف آورده شده است.
- اتصال به دیتابیس
```vb.net
Dim connectionString As String = "Data Source=YOUR_SERVER;Initial Catalog=PhoneBookDB;Integrated Security=True"
Dim connection As New SqlConnection(connectionString)
```
- بارگذاری اطلاعات در DataGridView
```vb.net
Private Sub LoadContacts()
Dim query As String = "SELECT * FROM Contacts"
Dim adapter As New SqlDataAdapter(query, connection)
Dim dt As New DataTable()
adapter.Fill(dt)
DataGridView
- DataSource = dt
```
- افزودن مخاطب جدید
```vb.net
Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
Dim query As String = "INSERT INTO Contacts (Name, Phone, Email, Address) VALUES (@Name, @Phone, @Email, @Address)"
Using cmd As New SqlCommand(query, connection)
cmd.Parameters.AddWithValue("@Name", txtName.Text)
cmd.Parameters.AddWithValue("@Phone", txtPhone.Text)
cmd.Parameters.AddWithValue("@Email", txtEmail.Text)
cmd.Parameters.AddWithValue("@Address", txtAddress.Text)
connection.Open()
cmd.ExecuteNonQuery()
connection.Close()
End Using
LoadContacts()
End Sub
```
- ویرایش مخاطب
وقتی کاربر روی یک سطر کلیک کند، اطلاعات آن در TextBox ها نمایش داده میشود و سپس میتواند ویرایش کند.
```vb.net
Private Sub DataGridView1_CellClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView
- CellClick
- Rows(e.RowIndex)
txtName.Text = row.Cells("Name").Value.ToString()
txtPhone.Text = row.Cells("Phone").Value.ToString()
txtEmail.Text = row.Cells("Email").Value.ToString()
txtAddress.Text = row.Cells("Address").Value.ToString()
End Sub
```
و سپس، عملیات ویرایش:
```vb.net
Private Sub btnEdit_Click(sender As Object, e As EventArgs) Handles btnEdit.Click
Dim query As String = "UPDATE Contacts SET Name=@Name, Phone=@Phone, Email=@Email, Address=@Address WHERE ID=@ID"
Using cmd As New SqlCommand(query, connection)
cmd.Parameters.AddWithValue("@Name", txtName.Text)
cmd.Parameters.AddWithValue("@Phone", txtPhone.Text)
cmd.Parameters.AddWithValue("@Email", txtEmail.Text)
cmd.Parameters.AddWithValue("@Address", txtAddress.Text)
cmd.Parameters.AddWithValue("@ID", txtID.Text)
connection.Open()
cmd.ExecuteNonQuery()
connection.Close()
End Using
LoadContacts()
End Sub
```
- حذف مخاطب
```vb.net
Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
Dim query As String = "DELETE FROM Contacts WHERE ID=@ID"
Using cmd As New SqlCommand(query, connection)
cmd.Parameters.AddWithValue("@ID", txtID.Text)
connection.Open()
cmd.ExecuteNonQuery()
connection.Close()
End Using
LoadContacts()
End Sub
```
- جستوجو بر اساس نام
```vb.net
Private Sub txtSearch_TextChanged(sender As Object, e As EventArgs) Handles txtSearch.TextChanged
Dim query As String = "SELECT * FROM Contacts WHERE Name LIKE @Search"
Dim adapter As New SqlDataAdapter(query, connection)
adapter.SelectCommand.Parameters.AddWithValue("@Search", "%" & txtSearch.Text & "%")
Dim dt As New DataTable()
adapter.Fill(dt)
DataGridView
- DataSource = dt
```
نکات مهم
- همیشه قبل از عملیاتهای دیتابیسی، اتصال را باز کنید و پس از انجام، ببندید.
- استفاده از پارامترها در کوئریها، امنیت برنامه را بالا میبرد و از حملات SQL Injection جلوگیری میکند.
- رابط کاربری باید ساده و کاربرپسند باشد، بنابراین، طراحی مناسبی برای فرم و کنترلها انجام دهید.
- برای بهبود عملکرد، هر بار که عملیات انجام میشود، لیست مخاطبین را مجدد لود کنید.
جمعبندی
در پایان، ساخت دفتر تلفن با VB.NET و SQL Server کار چندان پیچیدهای نیست، فقط نیازمند برنامهریزی دقیق و توجه به جزئیات است. با این روشهای ساده، میتوانید برنامهای بسازید که به راحتی مدیریت تماسهای روزمره را برایتان آسانتر کند. البته، برای پروژههای بزرگتر، میتوانید امکانات بیشتری مانند ذخیرهسازی در فایل، ارسال پیامک، یا پشتیبانی از چند کاربر را هم اضافه کنید.
امیدوارم این مقاله برایتان مفید باشد و بتوانید پروژهای کامل و کاربردی بسازید. اگر سوالی دارید، حتما بپرسید!