Giáo trình Visual Basic 6.0 Nguyễn Đăng Quang 6 9 Chương 7 Scrollbar – Image – Timer I. SCROLLBAR Là một đối tượng điều khiển dùng chọn một giá trị trong một khoảng cố định cho trước một cách trực quan. Có hai loại thanh cuộn: thanh cuộn dọc (VScrollbar) và thanh cuộn ngang (HScrollbar) 1. Các thuộc tính Min Qui định giá trị cực tiểu của thanh cuộn Max Qui định giá trị cực đại của thanh cuộn Value Giá trị đang được chọn của thanh cuộn, phụ thuộc vào vị trí của con chạy trên thanh cuộn. Giá trị này có thể đọc từ vị trí của con chạy hoặc gán trong chương trinh. SmallChange Qui định khoảng tăng/giảm của giá trị chọn trên thanh cuộn mỗi khi bấm nút mũ i tên ở hai đầu (default=1) LargeChange Qui định khoảng tăng/giảm của giá trị chọn trên thanh cuộn mỗi khi click trên vùng chạy của con chạy (default=1) Khi một thanh cuộn được tạo ra trên form, luôn luôn cần định nghĩa các giá trị min và max 2. Sự kiện Change Sự kiện xảy ra sau khi con chạy thay đổi vị trí hoặc thuộc tính value thay đổi Scroll Sự kiện xảy ra khi con chạy thay đổi vị trí hoặc thuộc tính value thay đổi 3. Ví dụ: Thiết kế form chọn màu bằng cách phối hợp 3 màu cơ bản RGB. Giá trị của các thành phần màu sẽ được chọn bằng thanh cuộn. Màu chọn được thể hiện bằng đối tượng Shape. Hình 7.1 : Thiết kế form chọn màu Các đối tượng trên form được chọn như sau: Giáo trình Visual Basic 6.0 70 Đối tượng Shape Thuộc tính Giá trị Name Shape1 FillStyle 0 - Solid Shape 0 - Rectangle Các Textbox (Mảng) Thuộc tính Giá trị Name txtColor Đối tượng Hscrollbar (mảng) Thuộc tính Value Name hsbColor Min 0 Max 255 Value 100 Viết lệnh cho sự kiện Form_Load như sau: Private Sub Form_Load() Shape1.FillColor = RGB(hsbColor(0).Value, hsbColor(1).Value, hsbColor(2).Value) End sub Viết lệnh cho sự kiện Change của các thanh cuộn như sau: Private Sub hsbColor_Change(Index As Integer) TxtColor(Index).Text = hsbColor(Index).Value ChangeFillColor End Sub Định nghĩa sub ChangeFillColor trong phần General như sau: Sub ChangeFillColor() Shape1.FillColor = RGB(hsbColor(0).Value, hsbColor(1).Value, hsbColor(2).Value) End sub Sửa định nghĩa Form_Load thành Private Sub Form_Load() ChangeFillColor End sub II. IMAGE Sử dụng để đặt một hình ảnh lên form. Các thuộc tính Picture Giữ hình cần trinh bày, thường nhận giá trị trả về từ hàm LoadPicture BorderStyle Kiểu khung (0-None, 1-Fixed Single) Stretch Hình tự động co giãn để nằm gọn trong khung đã qui định (True/False) Hàm LoadPicture(PathName) nạp các tập tin ảnh và chứa vào thuộc tính Picture của đối tượng Image. Các loại tập tin ảnh có thể nạp là : .BMP, .GIF, .JPG, .WMF, .CUR, .ICO Ví dụ : Nạp tập tin ảnh từ dĩa Image1.Picture = LoadPicture(“C:\WINDOWS\SETUP.BMP”) Giáo trình Visual Basic 6.0 Nguyễn Đăng Quang 7 1 III. TIMER Đối tượng dùng xử lý các sự kiện thời gian. Lệnh viết trong đối tượng timer sẽ tự động thực hiện sau một khoảng thời gian xác định. 1. Thuộc tính Interval Qui định khoảng thời gian xảy ra sự kiện. Tính bằng ms. Giá trị 0 làm Timer ngưng hoạt động) 2. Sự kiện Sự kiện được dùng để định nghĩa mã lệnh là sự kiện Timer. Sự kiện này xảy ra mỗi khi timer đếm đủ khoảng thời gian qui định trong thuộc tính Interval 3. Ví dụ Sử dụng đối tượng Image và Timer để tạo đối tượng hoạt động trong chương trình Hình 7.1 : Form chương trình tạo đối tượng chuyển động Image1 Thuộc tính Giá trị Name Image1 Picture Buttfly1 Visible False Image2 Thuộc tính Giá trị Name Image2 Picture Buttfly2 Visible False Image3 Thuộc tính Giá trị Name Image3 Timer1 Thuộc tính Giá trị Name Timer1 Interval 150 Enabled False CommandButton Thuộc tính Giá trị Name CmdSw Caption Start Viết lệnh cho sự kiện form_load như sau: Private Sub Form_Load() Image3.Picture = Image1.Picture End Sub Viết lệnh cho sự kiện thời gian của Timer: Giáo trình Visual Basic 6.0 72 Private Sub Timer1_Timer() Static T As Integer If T = 0 Then Image3.Picture = Image1.Picture T = 1 Else Image3.Picture = Image2.Picture T = 0 End If End Sub Viếtî lệnh cho CommandButton: Private Sub CmdSw_Click() If CmdSw.Caption=”Start” Then Timer1.Interval=150 CmdSw.Caption = "Stop" Else Timer1.Interval=0 CmdSw.Caption = "Start" End If End Sub . Giáo trình Visual Basic 6.0 Nguyễn Đăng Quang 6 9 Chương 7 Scrollbar – Image – Timer I. SCROLLBAR Là một đối tượng điều khiển dùng chọn một. Image3 .Picture = Image1 .Picture End Sub Viết lệnh cho sự kiện thời gian của Timer: Giáo trình Visual Basic 6.0 72 Private Sub Timer1 _Timer( ) Static T As Integer If T = 0 Then Image3 .Picture. Sử dụng đối tượng Image và Timer để tạo đối tượng hoạt động trong chương trình Hình 7. 1 : Form chương trình tạo đối tượng chuyển động Image1 Thuộc tính Giá trị Name Image1 Picture Buttfly1