Visual_Basic 板


LINE

既然是在講2005..所以我就把標題換成 .NET 了~ ※ 引述《finch319 (Finch)》之銘言: : 我有一個很類似的問題 : 只是我的環境是Visual Basic 2005的 : 我的程式是有9x9共81個Button : 名稱是Button00、Button01...Button88 : : vb6本來就可以把控制項開成陣列~ : : 你只要把 Name 設成一樣, 他就會問你要不要建立陣列~ : : 然後你就可以用 For 來跑這些 Lables : : (vb6會自己幫你設Index,你也可以在屬性修改) : : ' 用起來會像這樣, 這是一個 Label1 的陣列 : : For i = 0 To Label1.Count - 1 : : Label1(i).Caption = 1 : : Next i 要達到這個目的方法有很多.. 看你自己適合用哪一個.. 比較簡單(但比較沒效率的法) Me.Controls("Button00") 這樣就可以把 Button00 取出來了. 老話一句, 注意取出來的東西是 Control, 如果你只要操作他 Control 部份的特性 (像Text,Height,Top等等) 那就不用轉型了, 如果是要操作Button特有的方法屬性等等, 那要用CType轉型 (依情況你還會需要判斷是不是 Nothing, 因為Button??可能不存在) 這個方法衍生出來的另一個問題是, 怎麼用for-loop造出 "Botton00" 這個字串, 因為 "Button" & 0 是變成 "Button0" 這個可以用 String.Format("Button{0:00}", i) 來讓i不足兩位時補0 : 請問上面這個功能在2005有辦法用嗎 : 我把Button的名字設成一樣 : 會出現"無效的屬性值。"對話框 到從2002開始就不能直接從Designer把控制項設成同名來自動建立成陣列了.. 比較容易的作法就是上面講的方法, 如果你熟悉 Array或List的話, 我會建議你用自己手動動態產生Button陣列自己手動放到 Form 上面 如果你的 Button的個數是靜態的(不會或不常新增移除) 那建議你用 Array, 反之建議用 List 先宣告一個類別成員 Dim Buttons(81-1) as Buttons ' 用這個arrary存放你的buttons ' 在Form_Load或你想要的地方初始這81個 button ' 這段程式會在form上整齊放上81個button for i = 0 to Buttons.Length - 1 Buttons(i) = new Button() With Buttons(i) .Height = 20 ' 高 .Width = 20 ' 寬 .Top = (i mod 9) * 20 ' 上y .Left = (i \ 9) * 0 ' 左x .Text = i End With Me.Controls(Buttons(i)) ' 把這個Button放到你的 Form 上 Nexi 之後你要處理這81個button時, 就用像上面loop的方式處理他們 如果你要用List的方式作, 請自行參考如果使用 ArrayList 如果都覺得太麻煩, 也可以直接把 Form 上的 Controls全部弄出來, 再自行判斷是不是你要的Button 看你要用 for i = 0 to Controls.Length-1 'Controls(i) ???? Next 還是 foreach c as Control in Controls ' c?? Next 然後你可以用 typeof c is Button 來判斷c這個control是不是button 或用 c.Name 是不是 Button?? 再把他CType成Button去處理 : 我是希望能夠透過陣列來更改這些Button的Image屬性 : 不知道有沒有辦法做到? : 謝謝 --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.138.216.17
1F:推 finch319:感謝您的說明,我會再試試看的 06/22 23:41
2F:推 fumizuki:foreach 應該是 For Each 有空格才對? 06/24 10:16







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP