[VB2008] 請問vb2008如何讀檔將數據繪圖

看板Visual_Basic作者 (勇往直前)時間16年前 (2009/10/29 11:46), 編輯推噓1(105)
留言6則, 2人參與, 最新討論串1/1
請問:vb2008裡 寫出能夠讀取txt檔裡數值來畫圖形嗎? 下面的程式已經能夠讀取數值,請問將數據繪圖需要用什麼指令? 才疏學淺,想請問一下,謝謝 Imports System.Data Public Class Form1 Dim ds As New DataSet Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '讀取XML文件並放入DataSet ds.ReadXml("person.xml") DataGridView1.DataSource = ds.Tables("讀取資料") Dim dc As DataColumn = ds.Tables("讀取資料").Columns("地點") '在讀取資料DataTable建立地點欄位為主鍵,主鍵名稱為「PK_地點」 Imports System.Data Public Class Form1 Dim ds As New DataSet Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '讀取XML文件並放入DataSet ds.ReadXml("person.xml") DataGridView1.DataSource = ds.Tables("讀取資料") Dim dc As DataColumn = ds.Tables("讀取資料").Columns("地點") '在讀取資料DataTable建立地點欄位為主鍵,主鍵名稱為「PK_地點」 ds.Tables("讀取資料").Constraints.Add("PK_地點", dc, True) End Sub Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click Dim dr As DataRow '尋找指定的DataRow,若找不到會傳回Nothing dr = ds.Tables("讀取資料").Rows.Find(txtId.Text) '若DataRow為Nothing,表示DataTable內沒有該筆記錄 If dr Is Nothing Then '新增DataRow,即新增一筆記錄 Dim myRow As DataRow = ds.Tables("讀取資料").NewRow() myRow("地點") = txtId.Text myRow("日期") = txtDay.Text myRow("時間") = txtTime.Text ' myRow("信箱") = txtMail.Text ds.Tables("讀取資料").Rows.Add(myRow) MessageBox.Show("地點" & txtId.Text & "這筆記錄已經在記憶體新增完 成!!") Else MessageBox.Show(txtId.Text & "地點重複,已經有此筆記錄!!", "錯誤 ", MessageBoxButtons.OK, MessageBoxIcon.Warning) End If End Sub Private Sub btnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpdate.Click Dim dr As DataRow dr = ds.Tables("讀取資料").Rows.Find(txtId.Text) If dr Is Nothing Then MessageBox.Show("找不到地點 " & txtId.Text & "的資料!!所以無法進行 修改作業", "錯誤", MessageBoxButtons.OK, MessageBoxIcon.Warning) Else '修改記錄 dr("日期") = txtDay.Text dr("時間") = txtTime.Text ' dr("信箱") = txtMail.Text MessageBox.Show("地點" & txtId.Text & "這筆記錄已經在記憶體更新完 成!!") End If End Sub Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click Dim dr As DataRow dr = ds.Tables("讀取資料").Rows.Find(txtId.Text) If dr Is Nothing Then MessageBox.Show("找不到地點 " & txtId.Text & "的資料!!所以無法進行 刪除作業", "錯誤", MessageBoxButtons.OK, MessageBoxIcon.Warning) Else '刪除記錄 ds.Tables("讀取資料").Rows.Remove(dr) MessageBox.Show("地點" & txtId.Text & "這筆記錄已經在記憶體刪除完 成!!") End If End Sub Private Sub btnAllUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAllUpdate.Click '將DataSet的資料一次寫回XML文件 ds.WriteXml("person.xml") MessageBox.Show("成功的將資料更新到XML檔") End Sub Private Sub btnOk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOk.Click lstResult.Items.Clear() Dim ds As New DataSet ds.ReadXml("person.xml") '將person.xml讀入至ds '建立地點為讀取資料DataTable的主鍵 Dim dc As DataColumn = ds.Tables("讀取資料").Columns("地點") ds.Tables("讀取資料").Constraints.Add("PK_地點", dc, True) Dim dr As DataRow 'DataRowCollection的Find方法搜尋txtSearchId主鍵資料 dr = ds.Tables("讀取資料").Rows.Find(txtSearchId.Text) '判斷dr是否為Nothing If dr Is Nothing Then lstResult.Items.Add("沒有地點 " & txtSearchId.Text & " 的讀取資料 ") Return Else lstResult.Items.Add("地點:" & dr("地點")) lstResult.Items.Add("日期:" & dr("日期")) lstResult.Items.Add("時間:" & dr("時間")) End If End Sub End Class -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.17.10.203

10/29 12:08, , 1F
看你是要自己畫還是用API 網路上有很多API可以拿來用
10/29 12:08, 1F

10/29 12:09, , 2F
大部分都只要把資料作成ARRAY丟進去就可以了
10/29 12:09, 2F

10/29 13:09, , 3F
自己畫也很容易啦 本人文章 #18PHmBWU 有示範
10/29 13:09, 3F

10/29 13:09, , 4F
裡面只有示範drawpie, 但是你自己可以看help找出
10/29 13:09, 4F

10/29 13:10, , 5F
drawellipse, drawline也是一樣的 畫點就畫個小圓就好
10/29 13:10, 5F

10/29 13:11, , 6F
.NET graphics是真的取消畫點功能
10/29 13:11, 6F
文章代碼(AID): #1AwH00Dt (Visual_Basic)