(LPARAM) (LPCTSTR) "STRING"
Hope this will help (Note: code untested, sorry))
Khi tui tạo một combobox bằng CreateWindow(...) thì tui có thể dùng
SendMessage(hwndCombo,CB_ADDSTRING,0,(LPARAM)"..." );
Hoặc : SendMessage(hwndCombo,CB_INSERTSTRING,0,(LPARAM)". ..");
để thêm phần tử vào combobox. Nhưng khi tui xài combobox thiết kế trong resource thì ko tài nào add phần tử được.
Tui đã thử các lệnh như :
SendMessage(GetDlgItem(hDlg,IDC_COMBO),CB_INSERTST RING,0,(LPARAM)"He"); SendMessage(GetDlgItem(hDlg,IDC_COMBO),CB_ADDSTRIN G,1,(LPARAM)"Hi");
Cái combobox vẫn trống trơn ! Hic hic ! Mong các bạn giúp đỡ
(LPARAM) (LPCTSTR) "STRING"
Hope this will help (Note: code untested, sorry))
Our dreams are young and we both know they take us where we want to go...
Bởi vì cái combobox mà bạn kéo vào để kích thước không hợp lí, chiều cao của cái combobox chỉ đủ để chứa cái editbox, không có chỗ cho cái drop-down. Sửa lại bằng cách chọn combobox rồi ấn vào cái mũi tên bên phải, sau đó tăng độ cao cho cái combobox.Nguyên bản được gửi bởi hieubm
Nếu bạn thử vào file resource để xem kích thước của nó thì cũng thấy điều đó
This is true sorry ! He he ! Thank you ~~~~Nguyên bản được gửi bởi ilovecplusplus
Cảm ơn bạn nha, cái này nó quái thật. Thực ra khi tạo Combobox bằng CreateWindow(...) tớ cũng biết là phải cho nó dài xuống dưới để có chỗ để chữ. Nhưng khi thiết kế trên Dialog, thấy nó ko có chỗ kéo xuống dưới nên bất lực và ko biết nguyên nhân. Hóa ra là phải ấn vào cái nút drop-down, rồi thì mới chỉnh được kích cỡ dưới.Nguyên bản được gửi bởi vinhie47
Mà cũng ngộ thiệt đó, lẽ ra Microsoft phải tự resize cái combobox đó chớ, để người ta add thêm bao nhiêu thành phần cũng được. Nay khi add thêm nhiều thành phần ngoài dự kiến ( do người dùng add thêm khi chạy chương trình ), có lẽ phải xài đến MoveWindow(...)
Cách xài MoveWindow(...) có phải là cách hay ko ? Hay còn cách nào khác cao tay hơn, giúp nó resize.
Tại sao nó thế thì phải hỏi bác Gate thôi
Tui cũng đang bị cái này. Tui đã add các mục vào combo box bằng cái soạn thảo resource nhưng chạy chả thấy cái gì. VC6 dở ơi là dở!
Đừng chê nó dở. Tớ hểu tại sao bác Gate lại làm thế rồi. Đơn giản là vì : khi bạn có một combobox với hàng chục, hàng trăm phần tử. Lúc đó, combobox sẽ hiện ra với kích thước mà bạn đã định trong resource, và một thanh cuộn nhỏ hiện ra ở gần đó, ta có thể kéo thanh cuộn và xem đến phần tử cuối cùng.Nguyên bản được gửi bởi thuongshoo
Có trách thì trách chúng ta chưa hiểu bết rõ về combobox. Nhưng thực ra thì Microsoft cũng nên để cho cái combo đó một khoảng mặc định từ trước, để lập trình viên đỡ phải tự tay nới rộng khoảng cách mới xem được các phần tử.
vậy mà cũng chưa chịu ông VC dốt!Nhưng thực ra thì Microsoft cũng nên để cho cái combo đó một khoảng mặc định từ trước, để lập trình viên đỡ phải tự tay nới rộng khoảng cách mới xem được các phần tử.
Cái VC++ dở lắm! Nếu xài MFC, tạo dialog, rồi đổi tên dialog thử xem. Vô hộp thoại class wizard sẽ 0 thấy nữa!