Những câu hỏi về visual basic(phần 1) (1)

6 235 0
Những câu hỏi về visual basic(phần 1) (1)

Đang tải... (xem toàn văn)

Thông tin tài liệu

Những câu hỏi Visual Basic(phần 1) Những câu hỏi Visual Basic(phần 1) Bởi: Khoa CNTT ĐHSP KT Hưng Yên Những câu hỏi Visual Basic Ghi thiết đặt vào Registry Chúng ta dùng hàm GetSetting & lệnh SaveSetting để thực nhiệm vụ Vị trí ghi đọc giá trị chúng Registry nằm ở: HKEY_CURRENT_USER\Software\ VB and VBA Program Settings * Hàm GetSetting: Dùng để đọc trị từ Registry Có cú pháp sau: GetSetting(appname, section, key[, default]) Trong đó: AppName: Nơi mà hàm tìm đến để đọc, thường nên đặt tên ứng dụng Bắt buộc có Section: Trong AppName bạn tạo nhiều Section khác nhau, Section lưu trữ nhóm thông tin có liên quan với để dễ quản lý (giống tạo thư mục vậy) Bắt buộc có Key: Trong Section bạn tạo nhiều key, key lưu trị Bắt buộc có Default: Trị không tìm thấy Key cần đọc Registry Tham số có hay không Nếu trị chuỗi rổng ("") 1/6 Những câu hỏi Visual Basic(phần 1) * Lệnh SaveSetting: Ghi thông tin vào Registry SaveSetting appname, section, key, setting Các thông số tương tự hàm GetSetting đối số Default Nhưng lại có đối số Setting trị ghi vào Registry cho Key Bạn xem hình để biết rõ cách tổ chức thông tin Registry & cách ghi thiết đặt lệnh SaveSetting Các trị lưu Registry Thí dụ minh họa: Lưu trạng thái form trước thoát Trạng thái hiển thị form bao gồm: Maximize, Minimize, Normal, Top, Left, Width, Height Một vị trí thuận tiện để lưu thông số Registry Windows Vậy để giữ lại trạng thái form form phát sinh kiện Unload bạn ghi lại thông số trạng thái Khi mở form bạn cần đọc lại thông số lưu trữ Vậy ta giữ lại trạng thái form trước Để thí dụ minh họa cách lưu lại vi trí Form Hãy khởi động VB & tạo project mới, có form tên Form1, gõ vào code sau đây: Option ExplicitPrivate Sub Form_Load() On Error Resume Next 'Dòng gõ sau Me.Left = GetSetting("ChuongTrinh_ViDu", "ViTriForm", "X") Me.Top = GetSetting("ChuongTrinh_ViDu", "ViTriForm", "Y")End SubPrivate Sub Form_Unload(Cancel As Integer) SaveSetting "ChuongTrinh_ViDu", "ViTriForm", "X", Me.Left SaveSetting "ChuongTrinh_ViDu", "ViTriForm", "Y", Me.TopEnd Sub 2/6 Những câu hỏi Visual Basic(phần 1) Bây bạn cho chạy thử chương trình, chương trình chạy bạn thử di chuyển form nơi khác, dừng chương trình, sau cho chạy lại, bạn thấy form xuất vị trí mà nằm trước thoát Vào Registry để kiểm nghiệm Tuy nhiên thử chương trình bạn thấy báo lỗi, lý chưa có thông tin Registry để đọc vào properties Left & Top chạy lần đầu Để khắc phục lỗi bạn dùng đến trị Default hàm GetSetting Riêng tôi, chọn cách đặt thêm dòng On Error Resume Next vào dòng kiện Form_Load Làm cho chương trình giống trang Web Nếu bạn cảm thấy chán chường với nút lệnh Command Button, xin tạo cho chương trình siêu liên kết (Hyper Links) giống trang Web Cách làm dễ: Hãy dùng Label Box, đặt Caption thích hợp, sau mà tùy ý xử lý dựa kiện Mouse_Move Ví du rê mouse đến dòng Text Labelbox gạch chân bạn làm sau: Tạo project mới, có Form tên Form1, đặt Labelbox tên Label1 Mở cửa sổ code gõ vào đoạn code sau: Option ExplicitPrivate Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Label1.FontUnderline = FalseEnd SubPrivate Sub Label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Label1.FontUnderline = TrueEnd Sub 3/6 Những câu hỏi Visual Basic(phần 1) Qua đoạn code ta có nhận xét sau: - Khi mouse rê đến Label1 phát sinh kiện mouse_move Label làm cho dòng Text bị gạch chân (như Hyper link thứ thiệt) - Khi mouse form, luôn xảy kiện mouse form Label1 bị gán thuộc tính FontUnderline=False Do ta thấy mouse rời khỏi Labelbox tức Text hết bị gạch chân Khi mouse Form Khi mouse rê Labelbox Tuy nhiên Hyper link nhạt nhẽo thiếu nhiều "hương sắc Web" Bạn cho thêm vài thay đổi như: • • • • • • Đậm lên (FontBold) In nghiêng (Font Italic) Đổi Font chữ (FontName) Đổi màu chữ (ForeColor) Đổi màu (BackColor) Đổi biểu tượng chuột (Mouse Icon) Nhớ đặt MousePointer Custom - 99 Còn nhiều thứ xin mời bạn 4/6 Những câu hỏi Visual Basic(phần 1) Làm để mở trình Browser & Mail mặc định Windows ? Bạn khai báo hàm API sau: Private Declare Function ShellExecute Lib "shell32.dll" Alias _"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As _String, ByVal lpFile As String, ByVal lpParameters As String, _ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Khi cần dùng việc gọi hàm Dim ret&ret& = ShellExecute(Me.hwnd, "Open", "http://ilpweb.itgo.com", "", App.Path, 1) Nếu muốn gọi Mail bạn cần thay địa Web thành "mailto:email@site.com" Chúc bạn thành công Đường dẫn đối tượng DirListbox App Hãy lưu ý thuộc tính Path đối tượng Thí dụ bạn cần tham chiếu đến tập tin tên Test.txt nằm thư mục chương trình (giả sử App.path == c:\myapp) app.path & "\Test.txt" ==> c:\myapp\Test.txt Nhưng App.path bạn thư mục gốc ổ đĩa nào, ví dụ c:\ lại thành app.path & "\Test.txt" ==> c:\\Test.txt Chương trình báo lỗi Tương tự đối tượng DirListBox bị trường hợp Lý đối tượng trả cho thuộc tính Path trường hợp sau: • Nếu thư mục gốc thì: Tên ổ đĩa:\Tên thư mục - ví dụ C:\TEMP • Nhưng thư mục gốc lại Tên ổ đĩa:\ - vi dụ C:\ Khi lập trình tổng quát ta hay viết App.path & "\Test.txt" 5/6 Những câu hỏi Visual Basic(phần 1) Dir1.path & "\" & File1.Filename Như ta thấy dư dấu \ thư mục gốc Để giải lỗi bạn dùng hàm IIF() câu lệnh IF Cụ thể viết sau: Dim F as String F = Dir1.path & IIF(Len(Dir1.path)=3,""," ") & File1.FileName Hay If Len(Dir1=3) then F = Dir1.path & File1.FileName else F = Dir1.path & "\" & File1.FileName End If Chúc bạn thành công ! 6/6 ... viết App.path & "Test.txt" 5/6 Những câu hỏi Visual Basic(phần 1) Dir1.path & "" & File1.Filename Như ta thấy dư dấu thư mục gốc Để giải lỗi bạn dùng hàm IIF() câu lệnh IF Cụ thể viết sau: Dim... "X", Me.Left SaveSetting "ChuongTrinh_ViDu", "ViTriForm", "Y", Me.TopEnd Sub 2/6 Những câu hỏi Visual Basic(phần 1) Bây bạn cho chạy thử chương trình, chương trình chạy bạn thử di chuyển form nơi... Shift As Integer, X As Single, Y As Single) Label1.FontUnderline = TrueEnd Sub 3/6 Những câu hỏi Visual Basic(phần 1) Qua đoạn code ta có nhận xét sau: - Khi mouse rê đến Label1 phát sinh kiện mouse_move

Ngày đăng: 31/12/2015, 10:53

Từ khóa liên quan

Mục lục

  • Những câu hỏi về Visual Basic(phần 1)

  • Ghi các thiết đặt vào Registry

  • Thí dụ minh họa: Lưu trạng thái của form trước khi thoát

  • Làm cho chương trình giống trang Web

  • Làm sao để mở trình Browser & Mail mặc định của Windows ?

  • Đường dẫn của đối tượng DirListbox và App

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan