questioncellrenderer.java
来自「JAVA高级编程第2版书中所有的源代码,因为我有这本书觉得很不错,所以上传上来,」· Java 代码 · 共 46 行
JAVA
46 行
import java.awt.*;
import javax.swing.*;
import javax.swing.tree.*;
public class QuestionCellRenderer extends DefaultTreeCellRenderer {
protected JCheckBox questionRenderer = new JCheckBox();
public Component getTreeCellRendererComponent(JTree tree,
Object value, boolean selected, boolean expanded,
boolean leaf, int row, boolean hasFocus) {
if (value instanceof DefaultMutableTreeNode) {
DefaultMutableTreeNode node =
(DefaultMutableTreeNode)value;
Object userObject = node.getUserObject();
if (userObject instanceof TrueFalseQuestion) {
TrueFalseQuestion question =
(TrueFalseQuestion)userObject;
prepareQuestionRenderer(question, selected);
return questionRenderer;
}
}
return super.getTreeCellRendererComponent(tree, value,
selected, expanded, leaf, row, hasFocus);
}
protected void prepareQuestionRenderer(TrueFalseQuestion tfq,
boolean selected) {
questionRenderer.setText(tfq.getQuestion());
questionRenderer.setSelected(tfq.getAnswer());
if (selected) {
questionRenderer.setForeground(
getTextSelectionColor());
questionRenderer.setBackground(
getBackgroundSelectionColor());
}
else {
questionRenderer.setForeground(
getTextNonSelectionColor());
questionRenderer.setBackground(
getBackgroundNonSelectionColor());
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?