Tôi có một dãy Java JLabels Swing. Người dùng chương trình của tôi có thể thêm một JLabel mới vào JFrame, và tôi muốn làm cho kích thước của văn bản trong thay đổi JLabel dựa trên số lượng các JLabels trong khung. Nếu có quá nhiều JLabels, văn bản vẫn sẽ khớp và sẽ không chồng lên các JLabels khác.Đặt văn bản trong JLabel tự động đổi kích thước
Trả lời
Không đẹp, nhưng nếu đó là những gì bạn muốn, dưới đây là một đoạn mã nhanh để biên dịch và chạy. Vui lòng trích xuất bất kỳ mã nào bạn cần cho dự án của mình. Vui chơi, - M.S.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class LabelSize extends JPanel {
private Font font;
private JPanel panel;
private JLabel label = new JLabel ("Font Size Adapter Label", JLabel.CENTER);
private JTextField tf = new JTextField ("Type in text for new label here and hit [Enter]");
public LabelSize() {
super (new BorderLayout());
panel = labelPanel();
add (panel, "North");
add (tf, "South");
tf.addActionListener (new ActionListener() {
public void actionPerformed (ActionEvent e) {
label.setText (tf.getText());
label.setFont (font);
int labelW = (int) Math.ceil (label.getPreferredSize().getWidth());
int maxWidth = (int) Math.floor (panel.getSize().getWidth());
if (labelW <= maxWidth)
return;
for (int k = 1 ; labelW > maxWidth ; k++) {
Font labelFont = font.deriveFont (font.getSize() - k*1.0f);
label.setFont (labelFont);
labelW = (int) Math.ceil (label.getPreferredSize().getWidth());
}}});
}
private JPanel labelPanel() {
JPanel lp = new JPanel(new BorderLayout());
lp.setPreferredSize (new Dimension (270,30));
lp.add (label, "North");
font = label.getFont();
return lp;
}
public static void main (String[] args) {
JFrame lsFrame = new JFrame ("Lfit");
lsFrame.add (new LabelSize());
lsFrame.pack();
lsFrame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
lsFrame.setVisible(true);
}}
cảm ơn mã, nhưng yea không có gì làm việc cho tôi, tôi cần một cái gì đó thay đổi kích thước dựa trên kích thước của Jlabel – italiano40
Bạn được chào đón, và xin lỗi, tôi không hiểu coment - phần nào của mã không hoạt động? Tôi chỉ sao chép-n-dán nó trên một trình soạn thảo, lưu, biên dịch và chạy nó, chạy tốt. Có thể tôi đã không nhận được câu hỏi của bạn đúng - thành phần nào (thứ gì đó) mà bạn muốn thay đổi kích cỡ? Bạn có muốn các JLabels có phông chữ cố định (mặc định) không? –
- 1. Trình duyệt Android tự động đổi kích thước văn bản
- 2. Kích thước văn bản quy mô tự động
- 3. Tự động thay đổi kích thước văn bản nhãn trong Qt - hành vi lạ
- 4. tự động thay đổi kích thước văn bản (cỡ chữ) khi thay đổi kích thước cửa sổ?
- 5. jQuery - nhập văn bản kích thước tự động (không phải văn bản!)
- 6. ProgressDialog: thay đổi kích thước văn bản
- 7. Văn bản nhãn không được tự động thay đổi kích thước bằng cách sử dụng Bố cục tự động
- 8. HTML TextArea tự động thay đổi kích thước
- 9. Thay đổi kích thước hình tự động trong matplotlib
- 10. Lấy kích thước văn bản trong SFML
- 11. Tự động thay đổi kích thước hàng TableLayoutPanel khi cửa sổ được thay đổi kích thước
- 12. Cắt nhãn văn bản để đổi kích thước
- 13. iOS: UIButton đổi kích thước theo độ dài văn bản
- 14. Thay đổi kích thước văn bản trên UIButton
- 15. phông chữ văn bản thay đổi kích thước
- 16. hộp văn bản trong bảng HTML: Cách tự động định kích thước?
- 17. Thay đổi kích thước hình ảnh theo kích thước văn bản
- 18. Ngăn JList tự động thay đổi kích thước
- 19. Cách tự động thay đổi kích thước lưới khi biểu mẫu được thay đổi kích thước?
- 20. Thay đổi kích thước văn bản trong thẻ nhập văn bản?
- 21. Tự động hoàn tất có thể thay đổi kích thước
- 22. Tự động thay đổi kích thước div dựa trên kích thước của cửa sổ trình duyệt
- 23. Văn bản html JLabel bỏ qua setFont
- 24. Thay đổi kích thước văn bản thành Fit trên UITextView
- 25. Chrome: tạo văn bản không thay đổi kích thước
- 26. Khung nội tuyến Fancybox tự động thay đổi kích thước
- 27. JLabel với gói HTML-văn bản như khách hàng JScrollPane
- 28. Scrollable Composite - tự động thay đổi kích thước - swt
- 29. CSS, tự động thay đổi kích thước div?
- 30. Tự động thay đổi kích thước dojo dijit.Grid widget khi thùng chứa cha mẹ đổi kích thước
OK .. Bạn có câu hỏi nào về điều đó không? Nếu có, vui lòng chỉnh sửa bài đăng của bạn và thêm các câu hỏi. Tốt hơn với SSCCE (http://pscode.org/sscce.html) về những gì bạn đã thử. –
Câu hỏi là một số mã tốt để kích thước động văn bản trong nhãn để người dùng có thể thêm bao nhiêu khi họ muốn nhãn – italiano40