程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB6 >> VB制作QQ菜單

VB制作QQ菜單

編輯:VB6

QQ的界面大家都不陌生吧?CtListBar就是一個十分優秀的第三方控件,利用它我們可以很輕松的做出一個象QQ一樣的界面。這節中,我們將通過對CtListBar控件基本使用方法的學習,參照一個實例,打造出一個很酷的QQ菜單。

CtListBar控件包含了許多很有用的方法和屬性。開始實例學習前,我們有必要先對其主要的幾個方法和屬性了解一番。表一和表二分別列出了幾個主要的方法和屬性,以及它們的類型、說明。初步了解之後,現在我們就開始實例講解。

(表一)

方法 返回類型 說明 AddList integer 添加一個新的分組 DeleteList boolean 從控件中刪除一個已有分組 AddListItem integer 在一個分組中新添加一個項目 DeleteItem boolean 在一個分組中刪除一個項目 InsertListItem short 在某一分組中的某一位置插入一個新的項目 ClearLists void 清除控件中的所有分組和項目

(表二)

屬性 數據類型 說明 BackImage Picture 設置控件背景圖片。利用這個屬性,可以實現“皮膚”的功能。 BarHeight integer 設置分組按鈕的高度。 BorderType integer 設置控件的邊框樣式 BorderColor long 設置控件的邊框顏色,僅當BorderType設置為“0 - Regular”時有效。 ButtonBackColor long 設置分組按鈕和上下滾動按鈕的顏色。 ButtonForeColor long 設置分組按鈕和上下滾動按鈕的字體顏色。 ButtonSize integer 設置上下滾動按鈕大小。 GradientFill boolean 設置控件背景是否顯示漸變色。 GradColorFrom long 設置漸變色的起始顏色。 GradColorTo long 設置漸變色的結束顏色。 IconSize integer 設置圖標顯示模式是大圖標或小圖標。 Image1-6 Picture 設置預先在控件中加載的6幅圖片。 ListBarStyle integer 設置控件縱向或是橫向顯示。 ListBackColor long 設置控件的背景顏色。 ListForeColor long 設置分組中項目文字的顏色。 ListScrollSpeed integer 設置項目滾動的速度。 ItemScrollSpeed integer 設置分組滑動的速度。

第一步:首先啟動Visual Basic 6.0,新建一個窗口,修改窗口的Caption屬性為你喜歡的名字,如“我的QQ菜單”。

第二步:加載CtListBar控件,設置其屬性。

①在控件工具欄中單擊右鍵,選擇“部件”,在彈出的窗口中點擊“浏覽”,找到CtListBar控件,載入它;把它添加到Form1窗體中,用鼠標拖動調整其大小。

②修改Caption屬性為“我的好友”。Caption屬性值將是菜單第一個分組的名稱。

③修改ListBackColor屬性。實例中我們借用了QQ的頭像圖片,設置屬性值為&H00808000&,是背景顏色與圖片背景吻合。

④在Images屬性中載入圖片。CtListBar控件本身可以載入6幅圖片,這裡我們從QQ的頭像中載入6幅圖片(如圖1)。

⑤其余屬性可以參照表2,依你自己的喜好設置。這裡我們采用默認值。

小技巧:雖然CtListBar控件只能載入6幅圖片,但是我們可以用其他方法使CtListBar控件可以使用更多的圖片,如使用PictureBox控件、ImageList控件等。

第三步:添加其他控件,完成界面的設置。

在窗體中添加5個CommandButton,將名稱分別設置為cmd_AddList、cmd_DelList、cmd_AddItem、cmd_DelItem、cmd_Insert;將Caption屬性依次設置為“添加分組”、“刪除分組”、“添加項目”、“刪除項目”、“插入項目”。 

到這裡,界面的設置就搞掂了,完成後如圖2。

第四步:接下來,我們就開始代碼的編寫,實現具體的功能。

①聲明4個全局變量。

  Dim strListName, strItemName As String
   Dim intListNum, intItemNum As Integer 
 

②CtListBar控件不能預先設置好分組和項目,只能動態的添加,所以我們在Form_Load()事件中加入代碼,添加結果分組和項目。

ctListBar1.AddList "陌生人"
ctListBar1.AddList "黑名單"
ctListBar1.AddListItem 1, "My heart", ctListBar1.Image1
ctListBar1.AddListItem 1, "第七樂章", ctListBar1.Image2
ctListBar1.AddListItem 1, "小A", ctListBar1.Image3
ctListBar1.AddListItem 1, "小B", ctListBar1.Image4
ctListBar1.AddListItem 1, "張三", ctListBar1.Image5
ctListBar1.AddListItem 1, "李四", ctListBar1.Image6

以上代碼中,我們新添加了“陌生人”和“黑名單”兩個分組,又在原先設置過的“我的好友”分組中添加了6個項目。

提示:ctListBar1.AddListItem方法使用了3個參數,分別為nIndex(分組的Index值)、strText(項目的名稱)、Picture(項目的圖片)。

③在按鈕控件cmd_AddList的Click事件中輸入代碼:

  strListName = ""
   strListName = InputBox("請輸入要添加的分組名稱", "添加分組")
   If strListName <> "" Then ctListBar1.AddList strListName

在按鈕控件cmd_DelList的Click事件中輸入代碼:

  intListNum = 0
   intListNum = Val(InputBox("請輸入要刪除的分組標識號", "刪除分組"))
   If intListNum <> 0 Then ctListBar1.DeleteList intListNum
  

在按鈕控件cmd_AddItem的Click事件中輸入代碼:

  strItemName = ""
   intListNum = 0
   intListNum = Val(InputBox("請輸入要添加的項目所在分組的標識號", "添加項目"))
   If intListNum <> 0 Then strItemName = InputBox("請輸入要添加的項目的名稱", "添加項目")
   If strItemName <> "" Then ctListBar1.AddListItem intListNum, strItemName, ctListBar1.Image1

在按鈕控件cmd_DelItem的Click事件中輸入代碼:

  intListNum = 0
   intItemNum = 0
   intListNum = Val(InputBox("請輸入要刪除的項目所在分組的標識號", "刪除項目"))
   If intListNum <> 0 Then intItemNum = Val(InputBox("請輸入要刪除的項目的標識號", "刪除項目"))
   If intItemNum <> 0 Then ctListBar1.DeleteItem intListNum, intItemNum

在按鈕控件cmd_Insert的Click事件中輸入代碼:

  intListNum = 0
   intItemNum = 0
   strItemName = ""
   intListNum = Val(InputBox("請輸入要插入的項目所在分組的標識號", "插入項目"))
   If intListNum <> 0 Then intItemNum = Val(InputBox("請輸入要插入的項目所在位置的標識號", "插入項目"))
   If intItemNum <> 0 Then strItemName = InputBox("請輸入要插入的項目的名稱", "插入項目")
   If strItemName <> "" Then ctListBar1.InsertListItem intListNum, intItemNum, strItemName, tListBar1.Image1

提示:用AddListItem添加的項目只能添加在該分組末尾,而InsertListItem方法可以在一個分組中的指定位置插入一個新的項目。

到這裡,這個簡單的實例程序就完成了,按下F5,看看效果(如圖3),是不是很酷?和QQ象極了!CtListBar控件用處很多,它完全可以用來替代Visual Basic中菜單編輯器編輯出的古板菜單,很多著名軟件都使用了類似的菜單效果。在你的程序中也用上這個控件,一定可以為你的程序增輝不少。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved