package 迷你阅读器;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.ImageIcon;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.JPopupMenu;
import javax.swing.JTextPane;
import javax.swing.KeyStroke;
import javax.swing.UIManager;
import javax.swing.text.SimpleAttributeSet;
import javax.swing.text.Style;
import javax.swing.text.StyleConstants;
import javax.swing.text.StyleContext;
import javax.swing.text.StyledDocument;
import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Vector;
public class miniReader extends JFrame
{
File selectedFile,selectedFile2,selectedFile3,selectedFileupPage,selectedFiledownPage,saveFile,savereadFile,
imageFile,recordFile;
FileReader fr,fr3,frdownPage,frupPage,frsaveread,recordFileReader;
FileWriter frSave,recordFileWrite,saveFileWriter;
BufferedReader br,br3,brupPage,brdownPage,brsaveread,recordFileBR;
BufferedWriter brSave,recordFileBW;
RandomAccessFile SaveFile,lingcunwei;
boolean isHaveToolbar=true,isHaveleftSidebar=false,isHaveBottomSideBar=true,openFileIsxiaoshuo=true,
bgIsImage=false,nightModelisSelected=false,isQuanpingModel=false,
isEditModelisSelected=false;
String strFile="",getText="";
String strImage;//图片地址
Color bgcolor;//保存背景颜色
Image img;
StyledDocument doc;
int fontStyle=-1;
int fontSize=-1;//初始化字体大小
float lineSpace=-1.0f;//初始化行距
FontAttrib attrib=new FontAttrib();
Point frameLocation;//窗体位置
Dimension frameSize;//窗体大小
//总页数 当前页数
int totalChaptercounts,currentChaptercount;
JTextField currentChapter=new JTextField(4);
JTextField totalChapter=new JTextField(4);
//阅读区
JTextArea textArea;
JTextPane text;
JScrollPane scroll;
//JEditorPane textArea;
//时间
JTextField time;
//小说字数
JTextField wordCounts;
//阅读进度
JTextField readInformation;
//侧边栏菜单项
JMenuItem leftsideBarItem;
//工具栏
JMenuItem toolBarItem;
//状态栏
JMenuItem stateBarItem;
//全屏
JMenuItem fullScreenItem;
JMenuBar menubar;
//夜间模式
JToggleButton nightModelBtn;
JMenuItem bianjiModel;
//书签
JMenu openBookItem;
JMenu deleteBookItem;
Vector<String> myBooksMarksFiles=new Vector<String>();//书签文件地址
Vector<String> myBooksMarks=new Vector<String>();//书签
String currentTime;
//编辑状态
JToggleButton isEditable ;
JMenuItem nightModel;
//滚屏线程
scrollThread st;
JButton shuku;
//显示名言、书名
JPanel upleftPanel;
JPanel downmiddlePanel;
JLabel label=new JLabel();
JLabel mingyan=new JLabel();
//我的书库
List list;
//boolean isReading=true;
Vector<String> myBooksFiles=new Vector<String>();//小说文件地址
Vector<String> myBooks=new Vector<String>();//藏书
//接收阅读配置信息的变量
//初始窗体大小、位置、背景、当前请阅读的标记
int frameX=-1,frameY=-1,frameLocationX=-1,frameLocationY=-1,red=-1,green=-1,blue=-1,
currentPage=-1,currentReadingPosition=-1;
String bookAddress;
private Container currentContainer = this;//获取配置文件信息
{
getReadingSetFile();
}
private JScrollPane scrollPanel=createTextPanel();//阅读区
private JPanel leftSidePanel=createLeftSidePanel();//书架
private JPanel toolbarPanel=createToolbarPanel();//工具栏
private JPanel bottomSidePanel=createBottomSidePanel();//窗体底部面板
miniReader()//构造函数
{
try
{ // 使用Windows的界面风格
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
//UIManager.setLookAndFeel("com.birosoft.liquid.LiquidLookAndFeel");
}
catch (Exception e)
{
e.printStackTrace();
}
Image img = Toolkit.getDefaultToolkit().getImage("tubiao.gif");
this.setIconImage(img);
this.setLayout(new BorderLayout());
if(frameX==-1||frameY==-1)
this.setSize(1000,660);
else
this.setSize(frameX,frameY);
this.setVisible(true);
if(frameLocationX==-1||frameLocationY==-1)
this.setLocation(200, 70);
else
this.setLocation(frameLocationX, frameLocationY);
this.setTitle("迷你阅读器");
this.createMenu();
getTime();
this.add(scrollPanel,"Center");
leftSidePanel.setVisible(false);
this.add(leftSidePanel,"West");
this.add(toolbarPanel,"North");
this.add(bottomSidePanel,"South");
if(bookAddress!=null)
{
if(!bookAddress.equals("null"))
{
loadingBook(bookAddress);
}
}
requestFocus();
quanpingkeyEvent();
nextPagekeyEvent();
previousPagekeyEvent();
fanpingkeyEvent();
updateMingyan();
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
windowCloseEvent();
}
});
validate();
}
void createMenu()
{
menubar=new JMenuBar();
JPopupMenu.setDefaultLightWeightPopupEnabled(false);//解决组件重叠问题
JMenu fileMenu=new JMenu("文件(F)");
JMenu bookMenu=new JMenu("书签(B)");
JMenu optionMenu=new JMenu("选项(P)");
JMenu jiemianMenu=new JMenu("界面(D)");
JMenu tuozhanMenu=new JMenu("拓展(E)");
JMenu helpMenu=new JMenu("帮助(H)");
menubar.add(fileMenu);
menubar.add(bookMenu);
menubar.add(optionMenu);
menubar.add(jiemianMenu);
menubar.add(tuozhanMenu);
menubar.add(helpMenu);
JMenuItem openItem=new JMenuItem("添加小说");
JMenuItem saveItem=new JMenuItem("保存修改");
JMenuItem save2Item=new JMenuItem("另存为");
JMenuItem exitItem=new JMenuItem("退出");
fileMenu.add(openItem);
fileMenu.add(saveItem);
fileMenu.add(save2Item);
fileMenu.add(exitItem);
JMenuItem addBookItem=new JMenuItem("添加书签");
openBookItem=new JMenu("打开书签"); //
deleteBookItem=new JMenu("删除书签");
if(!myBooksMarks.isEmpty())
{
for(int i=0;i<myBooksMarks.size();i++)
{
loadingopenBooksMarks(myBooksMarks.elementAt(i));
loadingdeleteBooksMarks(myBooksMarks.elementAt(i));
}
}
JMenuItem deleteAllBookItem=new JMenuItem("删除所有书签");//
bookMenu.add(addBookItem);
bookMenu.add(openBookItem);
bookMenu.add(deleteBookItem);
bookMenu.add(deleteAllBookItem);
addBookItem.addActionListener(new ActionListener()//添加书签,打开书签,删除书签
{
public void actionPerformed(ActionEvent e)
{
addBooksMarks();
}
});
deleteAllBookItem.addActionListener(new ActionListener()//删除所有书签
{
public void actionPerformed(ActionEvent e)
{
openBookItem.removeAll();
deleteBookItem.removeAll();
myBooksMarks.clear();
myBooksMarksFiles.clear();
}
});
JMenu fontItem=new JMenu("字体");
JMenu bgColorItem=new JMenu("背景色");
JMenu lineSpaceItem=new JMenu("行距");
JMenu fontSizeItem=new JMenu("字体大小");
// JMenu pageItem=new JMenu("分页方式");
JM
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
阅读器.rar (97个子文件)
阅读器
1.gif 7KB
zidonggunping.gif 422B
tishi.gif 2KB
biggerFont.gif 395B
.project 391B
upPage.gif 735B
wodeshuku.gif 802B
smallerFont.gif 413B
bin
迷你阅读器
miniReader$42.class 1KB
miniReader$48.class 1KB
miniReader$11.class 1KB
miniReader$60.class 912B
miniReader$7.class 983B
miniReader$25.class 1KB
miniReader$59.class 764B
miniReader$62.class 1KB
miniReader.class 40KB
miniReader$17.class 1KB
miniReader$35.class 730B
miniReader$18.class 1KB
miniReader$52.class 805B
miniReader$41.class 1KB
miniReader$50.class 1KB
miniReader$56.class 828B
FontAttrib.class 3KB
miniReader$4.class 684B
miniReader$49.class 1KB
miniReader$61.class 916B
miniReader$34.class 884B
miniReader$40.class 727B
miniReader$27.class 2KB
miniReader$54.class 760B
miniReader$29.class 726B
miniReader$58.class 767B
miniReader$28.class 1000B
miniReader$38.class 867B
miniReader$14.class 1KB
miniReader$46.class 764B
miniReader$16.class 1KB
miniReader$9.class 1KB
miniReader$47.class 768B
mingyanThread.class 2KB
miniReader$22.class 1KB
miniReader$55.class 1KB
miniReader$37.class 868B
miniReader$3.class 679B
miniReader$65.class 1KB
miniReader$23.class 1KB
scrollThread.class 873B
miniReader$21.class 1KB
miniReader$19.class 1KB
miniReader$36.class 813B
miniReader$45.class 806B
miniReader$10.class 1KB
miniReader$12.class 1KB
miniReader$8.class 1KB
miniReader$39.class 735B
miniReader$31.class 748B
miniReader$51.class 2KB
miniReader$26.class 1KB
miniReader$20.class 1KB
miniReader$13.class 1KB
TimeThread.class 2KB
miniReader$57.class 762B
miniReader$32.class 827B
miniReader$15.class 1KB
miniReader$24.class 1KB
miniReader$43.class 2KB
miniReader$64.class 1KB
miniReader$53.class 1KB
miniReader$63.class 1KB
miniReader$30.class 728B
miniReader$2.class 681B
miniReader$1.class 2KB
miniReader$44.class 2KB
miniReader$6.class 729B
miniReader$5.class 687B
miniReader$33.class 729B
tubiao.gif 865B
hs_err_pid2296.log 13KB
addBook.gif 489B
.settings
org.eclipse.jdt.core.prefs 629B
xiaoshuo.gif 810B
shuku.gif 794B
duihao.gif 599B
bianji.gif 399B
src
迷你阅读器
miniReader.java 84KB
shoucang.gif 507B
fanping.gif 748B
smallerLine.gif 426B
biggerLine.gif 388B
nightModel.gif 969B
.classpath 375B
fullScreen.gif 1013B
openFile.gif 1KB
downPage.gif 736B
leftSidebar.gif 756B
共 97 条
- 1
资源评论
- zzrrttt2011-10-06不错哦,稍微的看了一下,就写了一个类,准备拆一下试试看。谢谢楼主
- wuyangyang20142014-06-24这下能对java的io系统研究一下了
- caowei789052013-01-21一般吧,不能满足我的需求!
z326700934
- 粉丝: 0
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功