• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Debug 2 câu lệnh này sao không được ?

Góc trao đổi, hỏi đáp của ngôn ngữ Visual Basic 6 và Visual Basic Script

Điều hành viên: tungblt

bvnthi
Bài viết: 6
Ngày tham gia: T.Hai 29/12/2008 10:53 am

Debug 2 câu lệnh này sao không được ?

Gửi bàigửi bởi bvnthi » T.Sáu 05/11/2010 4:51 pm

Giả sử mình muốn vẽ (hay tô màu) 1 hình chữ nhật gradient ở vùng MenuBar, khi chạy degbug sao không thấy nó vẽ ra ? câu lệnh sau

Mã: Chọn hết

    Dim g As New clsGradient
    Dim dc As New clsDeviceContext
    g.Rectangle dc.Handle, 0, 0, 24, 1, RGB(128, 167, 225), RGB(224, 237, 254), False
    SetMenuBarBackground Me.hwnd, dc.ConvertToBitmap(0, 0, 24, 1)

khi ấn F5 nó vẽ ra luôn mình không nhìn kịp lệnh vẽ ra là do lệnh g.Rectangle hay SetMenuBarBackground, có thể giải thích 2 câu lệnh trên được vẽ vào bộ nhớ thì phải ? mình có thể debug để xem vùng nhớ này được vẻ không ?



Hình đại diện của người dùng
siguri92
Thành viên danh dự
Thành viên danh dự
Bài viết: 111
Ngày tham gia: T.Sáu 01/10/2010 6:52 pm

Re: Debug 2 câu lệnh này sao không được ?

Gửi bàigửi bởi siguri92 » T.Sáu 05/11/2010 6:17 pm

Hic, thiệt chẳng hiểu bạn hỏi gì. ở trên thì nói không thấy vẽ ra. ở dưới thì nói vẽ ra luôn không kịp nhìn...
  1. g.Rectangle dc.Handle, 0, 0, 24, 1, RGB(128, 167, 225), RGB(224, 237, 254), False

dòng lệnh này vẽ gradient từ màu này đến màu kia lên dc
  1. SetMenuBarBackground Me.hwnd, dc.ConvertToBitmap(0, 0, 24, 1)

dòng này chuyển sang dạng bitmap để gán vào nền của menu

Hình đại diện của người dùng
andylam1992
Thành viên danh dự
Thành viên danh dự
Bài viết: 380
Ngày tham gia: T.Hai 06/04/2009 12:57 pm
Đến từ: TP.HCM Q5
Has thanked: 2 time
Been thanked: 4 time
Liên hệ:

Re: Debug 2 câu lệnh này sao không được ?

Gửi bàigửi bởi andylam1992 » T.Bảy 06/11/2010 10:24 am

bạn debug ko thấy có khi là do nó chưa xử lý xong, nhiều khi mấy cái hàm api mình debug cũng chằng thấy nó hiện ra, nhất là mấy cái hàm về graphic vì khi đó form của mình ko dc active.

不相信未作牺牲竟先可拥有
只相信是靠双手找到我欲求
Cần - Kiệm- Liêm(liêm kiết) - Nghĩa - Chí - Tín

Hình đại diện của người dùng
tuyen_dt18
Guru
Guru
Bài viết: 259
Ngày tham gia: T.Bảy 19/04/2008 8:46 pm
Đến từ: Hưng Yên
Been thanked: 43 time
Liên hệ:

Re: Debug 2 câu lệnh này sao không được ?

Gửi bàigửi bởi tuyen_dt18 » T.Bảy 06/11/2010 1:46 pm

Ngoài lý do đó bạn nên xem và thay đổi lần lượt thuộc tính AutoReDraw từ True đến False xem. Ngoài ra bạn có thể thử đặt lại Code vào thủ tục Paint của Control như Form_Paint(), Picture1_Paint, ...
Hỏi ý kiến tác giả trước khi sử dụng hoặc trích dẫn rõ nguồn bài viết khi sử dụng.


Quay về “Visual Basic 6 và Visual Basic Script (VB & VBS)”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.7 khách