Làm thế nào để bạn tạo một NSButton theo chủ đề tùy chỉnh? Tôi không có nghĩa là theo một cách nhỏ như thay đổi màu nền hoặc thay đổi từ các cạnh tròn thành các cạnh vuông. Tôi muốn thay thế toàn bộ giao diện của nút. Điều đó thậm chí có thể làm trong Cocoa? Rõ ràng tôi sẽ phải phân lớp lớp NSButton và đi từ đó. Bất kì sự trợ giúp nào đều được đánh giá cao.Làm cách nào để tạo một NSButton theo chủ đề tùy chỉnh?
8
A
Trả lời
12
Thực ra, bạn cần phải phân loại NSButtonCell
. Bạn nên đọc Apple's documentation về điều này để hiểu rõ hơn về cách chúng tương tác. Bạn có thể vẫn muốn phân lớp NSButton
để nó cũng sẽ sử dụng lớp con NSButtonCell
của bạn.
Đối với một nút, hầu hết công việc được thực hiện trong drawBezelWithFrame:inView:
. Nếu bạn muốn thay đổi cách văn bản hoặc hình ảnh được vẽ, bạn sẽ ghi đè drawText:withFrame:inView:
và drawImage:withFrame:inView:
.
Các vấn đề liên quan
- 1. Cách tạo chủ đề Google Sites tùy chỉnh?
- 2. Cách tham chiếu một kiểu trong chủ đề tùy chỉnh
- 3. Làm cách nào để tạo một nhóm chủ đề?
- 4. Để tạo chủ đề hoặc không theo chủ đề
- 5. Làm cách nào để tạo Hộp thoại tùy chỉnh 100%
- 6. Cách tạo tiêu đề email tùy chỉnh
- 7. Làm cách nào để tạo lớp chế độ xem tùy chỉnh theo lập trình?
- 8. Cách đặt tiêu đề "Máy chủ" tùy chỉnh trong HttpWebRequest?
- 9. Không thể để hộp tìm kiếm hiển thị theo chủ đề tùy chỉnh
- 10. Làm cách nào để sửa một chủ đề tùy chỉnh wordpress để hoạt động với các plugin?
- 11. Làm cách nào để tạo bản đồ màu tùy chỉnh theo lập trình?
- 12. Làm cách nào để tạo loại đầu vào tùy chỉnh?
- 13. Làm cách nào tôi có thể tạo liên kết tùy chỉnh này theo lập trình?
- 14. Cách xử lý chủ đề emacs tùy chỉnh của tôi là "chủ đề an toàn"?
- 15. Làm cách nào để tạo chủ đề daemon?
- 16. Thêm Phông chữ tùy chỉnh vào Chủ đề trong Android
- 17. Chủ đề tùy chỉnh Android: chủ đề khác nhau cho chế độ ngang và dọc
- 18. Chủ đề Asp.Net MVC, làm cách nào?
- 19. Làm thế nào để tạo thanh cuộn jQuery tùy chỉnh
- 20. Xây dựng Chủ đề tùy chỉnh hoặc Sử dụng Chủ đề chuẩn trong WPF
- 21. Theo dõi chủ đề Java. Làm thế nào để tìm ra chủ đề không daemon sống?
- 22. Tạo etag tùy chỉnh
- 23. Tôi làm cách nào để UnitTest một ActionFilter tùy chỉnh?
- 24. DevExpress MVC: không thể sử dụng chủ đề tùy chỉnh
- 25. Tạo một OnClickListener tùy chỉnh
- 26. Tôi làm cách nào để sử dụng git để theo dõi các tùy chỉnh SRPM?
- 27. Toàn màn hình trong chủ đề tùy chỉnh
- 28. Làm thế nào để chuyển một biến theo tên cho một Chủ đề bằng Python?
- 29. Làm cách nào để chủ đề mẫu để chỉnh sửa hoặc thêm nút cho một loại nội dung cụ thể?
- 30. Làm thế nào để bạn áp dụng một chủ đề màu tùy chỉnh Emacs trong chế độ console?
Đúng, đó là cách tốt nhất để làm điều đó. Lưu ý, nếu bạn đang sử dụng Trình tạo giao diện và Mac OS 10.5, bạn không còn phải phân lớp NSButton nữa. Chỉ cần kéo/thả nút trong ngòi bút của bạn và sau đó thay đổi lớp tế bào thành lớp tùy chỉnh của bạn. – Leibowitzn
Điều này đúng. Hơn nữa, thời gian duy nhất bạn thực sự cần phải phân lớp 'NSButton' là nếu bạn đang tạo các điều khiển theo lập trình. – Alex
Tôi có thể chỉ muốn thay thế giao diện bằng cách đặt thuộc tính không? Tôi đã có thể thay đổi diện mạo bằng cách sử dụng thuộc tính "hình ảnh" của nút nhưng tôi có hình chữ nhật màu xám xấu xí bất cứ khi nào nút tùy chỉnh được nhấp (hình ảnh có độ trong suốt). Cảm ơn. – adib