如何在 Java 中實現可編輯的 JLabel?(英語)
JLabel
- 一個 JLabel 類可以擴充套件 JComponent 類,JLabel 的一個物件可以提供文字說明或關於一個 GUI 的資訊。
- 一個 JLabel 能顯示一行 只讀文字、一個 圖片 或兼具 文字 和 圖片。
- JLabel 的重要方法包括 setText()、setIcon()、setBackground()、setOpaque()、setHorizontalAlignment()、setVerticalAlignment() 等。
- 一個 JLabel 可以顯式生成一個 PropertyChangeListener 介面。
示例
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.text.*;
public class JEditableLabel extends JFrame {
public JEditableLabel() {
setTitle("JEditableLabel");
setLayout(new FlowLayout());
final JLabel label = new JLabel(" Welcome to Tutorials Point");
final JTextField textfield = new JTextField();
final CardLayout cl = new CardLayout();
final JPanel panel = new JPanel(cl);
panel.add(label, "label component");
panel.add(textfield, "textfield component");
add(panel);
label.addMouseListener(new MouseAdapter() {
public final void mouseEntered(MouseEvent evt) {
textfield.setText(label.getText());
cl.show(panel, "textfield component");
}
});
textfield.addMouseListener(new MouseAdapter() {
public final void mouseExited(MouseEvent evt) {
label.setText(textfield.getText());
cl.show(panel, "label component");
}
});
setSize(375, 250);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new JEditableLabel();
}
}輸出
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP