📄 tableresult.java
字号:
package main;
import java.awt.*;
import java.util.*;
import javax.swing.*;
import javax.swing.border.*;
import main.myClass.*;
public class TableResult extends JPanel implements Observer{
myHashtable result;
ResultPanel parent;
int size,column;
String[] name;
String quick,slow;
Color simple=Color.blue;
public TableResult(ResultPanel rs,Hashtable algorithm){
((Observable)(rs)).addObserver(this);
parent=rs;
setBackground(Color.white);
setLayout(new BoxLayout(this,BoxLayout.X_AXIS));
setBorder(new LineBorder(Color.black));
this.name=name;
JPanel temp=new JPanel();
temp.setLayout(new GridLayout(name.length+1,0));
addLabel(temp,"排序方法",Color.black);
for(int i=0;i<name.length;i++)
addLabel(temp,name[i],simple);
add(temp);
}
public void update(Observable ob,Object o){
JPanel temp=new JPanel();
temp.setLayout(new GridLayout(name.length+1,0));
result=((ResultPanel)ob).result;
size=result.size();
quick=result.getKey(0);
slow=result.getKey(size-1);
addLabel(temp,parent.order+"/"+parent.number,Color.black);
for(int i=0;i<name.length;i++){
if(result.contain(name[i])){
String here=(String)(result.get(name[i]));
if(name[i].equals(quick))
addLabel(temp,here,Color.red);
else if(name[i].equals(slow))
addLabel(temp,here,Color.yellow);
else
addLabel(temp,here,simple);
}
else
addLabel(temp,"",Color.white);
}
add(temp);
}
public void addLabel(JPanel p,String s,Color c){
JLabel here=new JLabel(s,JLabel.CENTER);
here.setBackground(c);
here.setForeground(c);
here.setBorder(new LineBorder(Color.black));
p.add(here);
}
public Dimension getPreferredSize(){
return new Dimension(500,300);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -