Đối tượng richtextarea của java gwt có mặc định là font-family 'times new roman' là nó bằng cách nào đó có thể thay đổi gia đình thành 'Arial'?java gwt richtextarea thay đổi font-family
Trả lời
Bạn có một số tùy chọn. Bạn có thể tạo một lớp CSS và thiết lập nó trên phần tử cơ thể của tài liệu bên trong RichTextArea, hoặc bạn có thể thiết lập thuộc tính style trên nó trực tiếp. Nếu bạn muốn thay đổi này nhất quán trong suốt ứng dụng của mình, tôi khuyên bạn nên tạo một lớp mới và thêm InitializeHandler vào nó.
public class MyRichTextArea extends RichTextArea {
public MyRichTextArea() {
addInitializeHandler(new InitializeHandler() {
@Override
public void onInitialize(InitializeEvent ie) {
Document document = IFrameElement.as(getElement()).getContentDocument();
BodyElement body = document.getBody();
body.setAttribute("style", "font-family: Arial Unicode MS,Arial,sans-serif;");
});
}
}
}
Tốt hơn nên sử dụng chức năng được cung cấp. Nếu bạn muốn thay đổi nó lúc sáng tạo, bạn sẽ cần initializeHandler như đã đề cập trong câu trả lời 1:
RichTextArea rta = new RichTextArea();
rta.addInitializeHandler(new InitializeHandler() {
public void onInitialize(InitializeEvent event) {
rta.getFormatter().setFontName("\"Trebuchet MS\",Trebuchet,Arial");
rta.getFormatter().setFontSize(FontSize.SMALL);
rta.getFormatter().setForeColor("#FF0000");
}
});
PS: bạn cần phải làm điều này trước khi bạn thêm bất kỳ nội dung vào textarea, hoặc nó sẽ chỉ có áp dụng cho đầu vào mới.
Vì thứ tự câu trả lời có thể thay đổi khi bỏ phiếu, sẽ hữu ích hơn khi tham khảo câu trả lời khác của người dùng đã đăng, thay vì số của nó. – ASGM
Đây là câu trả lời WRONG - nó sẽ thiết lập một phong cách mới trên văn bản được lựa chọn duy nhất, không phải trên tất cả các nội dung của RichTextArea như được chỉ định trong câu hỏi. –
tôi đã tìm thấy giải pháp phổ biến hơn:
addInitializeHandler(new InitializeHandler() {
public void onInitialize(InitializeEvent ie) {
Document document = IFrameElement.as(getElement()).getContentDocument();
BodyElement body = document.getBody();
HeadElement head = HeadElement.as(Element.as(body.getPreviousSibling()));
LinkElement styleLink = document.createLinkElement();
styleLink.setType("text/css");
styleLink.setRel("stylesheet");
styleLink.setHref("richtextarea.css");
head.appendChild(styleLink);
}
});
Sau khi thêm handler khởi, thật dễ dàng để thay đổi phong cách trong richtextarea.css
tập tin
- 1. Cách đặt vị trí con trỏ trong GWT RichTextArea
- 2. Làm cách nào để thay đổi FontFamily trên một ContentPresenter?
- 3. GWT: Thay đổi đệm của hàng cây?
- 4. Cách đặt FontFamily ở mã
- 5. HTML được tạo cho RichTextArea: #document là gì?
- 6. GWT: làm thế nào để thay đổi màu sắc liên tiếp trong GWT Celltable
- 7. hộp văn bản gwt thêm trình xử lý thay đổi
- 8. GWT Canvas: làm thế nào để thay đổi dòng màu
- 9. Bảng điều khiển có thể thay đổi kích thước GWT
- 10. Java ClassLoader thay đổi
- 11. GWT để Javascript chuyển đổi
- 12. Sửa đổi kiểu từ GWT
- 13. Thay thế tốt GWT cho asp.net
- 14. Java GregorianCalendar thay đổi TimeZone
- 15. Java - Nghe thay đổi biến
- 16. Chọn giữa java hoặc php cho GWT!
- 17. Cách nhóm các tiện ích tổng hợp gwt thay đổi sự kiện dưới dạng sự kiện thay đổi
- 18. GWT DevMode không tải lại các thay đổi trên các tệp css
- 19. Một giải pháp thay thế tốt cho GWT cho Clojure
- 20. Java thay đổi áéőűú để aeouu
- 21. android (thay đổi chuỗi trong mã java)
- 22. Thay đổi mã Java trong liquibase
- 23. Java - Thay đổi int thành ascii
- 24. Java - cấu trúc thay đổi int enums
- 25. Thay đổi Cổng RMI Mặc định (Java)
- 26. thay đổi biến java từ mã JRuby?
- 27. Thay đổi bộ đệm chuột bằng java
- 28. Trình xây dựng dự án Maven được gọi mỗi khi tôi thay đổi tệp nguồn (GWT)
- 29. Làm thế nào để lưu trữ FontFamily như một StaticResource?
- 30. GWT: Sự khác biệt giữa gwt-user.jar và gwt-dev.jar?
xin lỗi nhưng điều đó không làm việc, tôi cũng đã cố gắng để thiết lập nó với : richTextArea.setStyleName ("font-family: Arial Black"); – wasp256
Nó hoạt động hoàn toàn tốt trong ứng dụng của tôi. setStyleName, mặt khác, rõ ràng sẽ không hoạt động vì nó đặt kiểu trên chính RichTextArea chứ không phải trên tài liệu chứa nó. –