史萊姆論壇

返回   史萊姆論壇 > 專業主討論區 > 程式語言討論區
忘記密碼?
論壇說明

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


發文 回覆
 
主題工具 顯示模式
舊 2014-01-22, 06:19 AM   #1
魔術王子
版區管理員
 
魔術王子 的頭像
榮譽勳章
UID - 115097
在線等級: 級別:42 | 在線時長:1993小時 | 升級還需:28小時級別:42 | 在線時長:1993小時 | 升級還需:28小時
註冊日期: 2004-01-13
住址: 魔術學園
文章: 2989
精華: 0
現金: 14967 金幣
資產: 2678597 金幣
預設 程式 - [使用版本VB2008]程式設定選單

Visual Basic程式選單大部分都是在設計時期,在編譯程式設定的
透過Visible屬性來設定選項的顯示與否
不過也可以透過程式碼來新增選單項目
https://imagizer.imageshack.us/v2/306x312q90/28/z393.jpg
https://imagizer.imageshack.us/v2/306x312q90/24/9lbs.jpg
引用:
作者: Form1.vb
Imports System.IO
Public Class Form1

Dim ToolStripMenuItem(20) As ToolStripMenuItem
Dim ad As DriveInfo() = DriveInfo.GetDrives
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim i As Single, j As Single = 0
For i = 0 To ad.Count - 1
If ad(i).IsReady Then
ToolStripMenuItem(j) = New System.Windows.Forms.ToolStripMenuItem
ToolStripMenuItem(j).Text = ad(i).Name & ad(i).VolumeLabel
ToolStripMenuItem(j).Tag = i
DriveToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripMenuItem() {ToolStripMenuItem(j)})
AddHandler ToolStripMenuItem(j).Click, AddressOf ToolStripMenuItem_Click
j += 1
End If
Next

'For Each md As DriveInfo In ad
'If md.IsReady Then

'End If
'Next
End Sub

Private Sub ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
TextBox1.Text = "磁碟機代號: " & ad(sender.tag).Name & vbCrLf _
& "磁碟標籤: " & ad(sender.tag).VolumeLabel & vbCrLf _
& "磁碟類型: " & ad(sender.tag).DriveType.ToString & vbCrLf _
& "磁碟格式: " & ad(sender.tag).DriveFormat & vbCrLf _
& "磁碟大小: " & ad(sender.tag).TotalSize.ToString & vbCrLf _
& "剩餘空間: " & ad(sender.tag).AvailableFreeSpace.ToString
End Sub
End Class
由於我們必須要利用DriveInfo讀取磁碟機的資訊,所以必須下Imports System.IO指令,不然程式會"不認識"DriveInfo
引用:
Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip
Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
Friend WithEvents DriveToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem
表單上只放2個元件MenuStrip1元件以及TextBox1元件,TextBox1元件的Multiline 必須設為 True,然後在MenuStrip1元件在加入一個ToolStripMenuItem
引用:
AddHandler ToolStripMenuItem(j).Click, AddressOf ToolStripMenuItem_Click
這是將ToolStripMenuItem(j)的Click事件指向ToolStripMenuItem_Click程式段
當被點選的項目執行該程式段時,sender代表的便是該項目的指標,而再將項目加到DriveToolStripMenuItem時
已經將該項目的Index資訊存入tag屬性(ToolStripMenuItem(j).Tag = i)
所以我們只需要取出該屬性值,就可以知道使用者點選哪個項目("磁碟機代號: " & ad(sender.tag).Name & vbCrLf _)
魔術王子 目前離線  
送花文章: 1530, 收花文章: 1555 篇, 收花: 3894 次
回覆時引用此帖
發文 回覆



發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用

相似的主題
主題 主題作者 討論區 回覆 最後發表
程式 - [使用版本VB2008]DataGridView元件不連接資料庫使用 魔術王子 程式語言討論區 1 2014-01-21 09:50 PM


所有時間均為台北時間。現在的時間是 06:22 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1