📄 ruleslist.java
字号:
package expertSystem.presentation;
import java.awt.BorderLayout;
import java.util.List;
import javax.swing.*;
import javax.swing.table.AbstractTableModel;
import expertSystem.knowledgeBase.Fact;
import expertSystem.knowledgeBase.Rule;
public class RulesList extends JPanel{
JTable tabela;
public RulesList(){
tabela = new JTable(new Rules());
setLayout(new BorderLayout());
JScrollPane sp=new JScrollPane(tabela);
add(sp, BorderLayout.CENTER);
}
class Rules extends AbstractTableModel {
private static final long serialVersionUID = 1L;
private String[] columnNames = {"Prerequisites","Conclusions","Check"};
List<Rule> rules=null;
Rules(){
rules=Window.machine.base.ruleList;
}
public int getColumnCount() {
return columnNames.length;
}
public int getRowCount() {
if(rules==null)return 0;
return rules.size();
}
public String getColumnName(int col) {
return columnNames[col];
}
public Object getValueAt(int row, int col) {
Rule p = rules.get(row);
switch(col){
case 0:
String s="";
for(Fact pr : p.prerequisiteList){
s=s+"<"+pr.factName+" "+pr.atributeName+" "+pr.value+">";
}
return s+" ";
case 1:
String ss="";
for(Fact pr : p.conclusionList){
ss=ss+"<"+pr.factName+" "+pr.atributeName+" "+pr.value+">";
}
return ss+" ";
case 2:
String sss="";
sss=sss+"<"+p.isCheck+">";
return sss+" ";
}
return " ";
}
public Class getColumnClass(int c) {
return getValueAt(0, c).getClass();
}
public boolean isCellEditable(int rowIndex, int columnIndex){
if(((columnIndex==0)&&(columnIndex==1)&&(columnIndex==2)))return true;
return false;
}
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
Rule a = rules.get(rowIndex);
if(columnIndex==0){
}
if(columnIndex==1){
}
if(columnIndex==2){
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -