📄 wordstorepanel.java
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
import java.io.*;
public class WordStorePanel extends JPanel
{
///////////////////////////////////////////////////////////////////////////////
/////////////table1是单词级别表,table2是单词组表
String [] tableName1 ={"词库选择"};
String [] tableName2 ={"分组选择"};
DefaultTableModel model1 = new DefaultTableModel(tableName1,9);
DefaultTableModel model2 = new DefaultTableModel(tableName2,9);
JTable table1 = new JTable(model1);
JScrollPane tablePanel1 = new JScrollPane(table1);
JTable table2 = new JTable(model2);
JScrollPane tablePanel2 = new JScrollPane(table2);
WordBase wordBase = new WordBase();
tableListener tl = new tableListener();
tableListener ttl = new tableListener();
int mousePressCount = 0;
int wordChooseCount =0;
TableColumnModel columnModel = table1.getColumnModel();
TableColumnModel columnModel1 = table2.getColumnModel();
WordStorePanel()
{
columnModel.getColumn(0).setPreferredWidth(125);
columnModel1.getColumn(0).setPreferredWidth(125);
table1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
table2.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
table1.setForeground(Color.blue);
table2.setForeground(Color.blue);
tablePanel1.getHorizontalScrollBar().setBackground(Color.blue);
tablePanel1.getVerticalScrollBar().setOpaque(false);
tablePanel2.getVerticalScrollBar().setOpaque(false);
table1.getTableHeader().setForeground(Color.yellow);
table1.getTableHeader().setBackground(Color.blue);
table2.getTableHeader().setForeground(Color.yellow);
table2.getTableHeader().setBackground(Color.blue);
table1.addFocusListener(tl);
table2.addFocusListener(ttl);
table1.setOpaque(false);
table2.setOpaque(false);
tablePanel1.setOpaque(false);
tablePanel2.setOpaque(false);
System.out.println("aaaaaaaaaa");
table1.setPreferredScrollableViewportSize(new Dimension(70,80));
table1.setPreferredScrollableViewportSize(new Dimension(70,80));
tablePanel1.setPreferredSize(new Dimension(70,80));
this.setLayout(new GridLayout(2,1));
this.add(tablePanel1);
this.add(tablePanel2);
WordStorePanel.this.setModel();
}
////////////////////////////////////////////////////////
///////////创建单词库的model
public void setModel()
{
String [] name = {""};
String [] wbName = wordBase.getDatName();
model1 = new DefaultTableModel(tableName1,9);
System.out.println("ddddddddddddddddddddddddddddddddd");
for(int i = 0; i < wbName.length;i++)
{
name[0] = wbName[i];
model1.insertRow(i,name);
System.out.println(wbName[i]);
}
table1.setModel(model1);
columnModel.getColumn(0).setPreferredWidth(125);
setCountModel();
}
//////////////////////////////////////////////////////////////////
//////////////
public void getSelectName()
{
ReadDat.fileName = model1.getValueAt(mousePressCount,0).toString();
System.out.println(wordChooseCount+"mmmmmmmmmmmmmmmmmmmmmmmmmm");
ReadDat.wordTeam = wordChooseCount;
model2 = new DefaultTableModel(tableName2,7);
setCountModel();
}
////////////////////////////////////////////////////////////////////////
///////////一个库里有多少组
public int allCount()
{int i = 0;
int j = 0;
String fileName;
try
{
fileName= ReadDat.filePath + ReadDat.fileName + ".dat";
System.out.println(fileName);
FileReader in = new FileReader(fileName);
BufferedReader buf = new BufferedReader(in);
while(buf.readLine()!=null)
i++;
j = (i + ReadDat.wordCount - 1 )/ReadDat.wordCount;
}
catch(Exception e)
{
System.out.println("read file error"+ e.getMessage());
}
return j;
}
/////////////////////////////////////////////////////
//////////// 单词组表
public void setCountModel()
{
int j =allCount();
String [] name = {""};
for(int i = 0; i < j;i++)
{
name[0] = "第"+String.valueOf(i+1) + "组";
model2.insertRow(i,name);
}
table2.setModel(model2);
columnModel1.getColumn(0).setPreferredWidth(125);
System.out.println("dafdasfdasfffffasdfdagdfasgfda");
table2.setColumnModel(columnModel1);
}
///////////////////////////////////////////////////////////
/////////////////
//////////////////////////////////////////////////
////////////表监听
class tableListener implements FocusListener
{
JTable table;
public void focusGained(FocusEvent e)
{
table = (JTable)e.getSource();
table.addMouseListener(new MousePressListener());
//mousePressCount = table.getSelectedRow();
}
public void focusLost(FocusEvent e)
{
getSelectName();
}
/////////////////////////////////////////
///////鼠标监听
class MousePressListener extends MouseAdapter
{
public void mousePressed(MouseEvent e)
{
if(table == table1)
mousePressCount = table.getSelectedRow();
else
wordChooseCount =table.getSelectedRow();
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -