| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1165 人关注过本帖
标题:急求"帮助文件"的源码
只看楼主 加入收藏
八秒钟
Rank: 1
等 级:新手上路
威 望:1
帖 子:42
专家分:0
注 册:2006-12-20
收藏
 问题点数:0 回复次数:19 
急求"帮助文件"的源码
一个窗口,有个菜单,里面有个菜单项是"帮助",点了这个菜单项之后,就打开了一个帮助文件,就是CHM格式的帮助文件,
谁可以写一个简单的代码发上来啊~~~~~~~~~~~~~~~~~~~~~~~
只要实现这个功能就可以了



这个程序的全部文件都在这里了,其实在清华大学出版社的网站上可以找到的
bgCAayt9.rar (55.03 KB) 急求"帮助文件"的源码


[此贴子已经被作者于2007-1-13 22:00:20编辑过]

搜索更多相关主题的帖子: 源码 文件 
2007-01-13 20:20
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 

JAVA搞不了CHM文件,你只有写一个CHM文件,然后JAVA来调用本地方法打开它


可惜不是你,陪我到最后
2007-01-13 20:25
八秒钟
Rank: 1
等 级:新手上路
威 望:1
帖 子:42
专家分:0
注 册:2006-12-20
收藏
得分:0 
我知道知道'
就是不知道如何调用啊

帮助文件是事先准备好的
如何使菜单项可以打开它啊
2007-01-13 20:44
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 

假设你的chm文件叫"my.chm",并放在和class一个目录下
Runtime.getRuntime().exec("hh my.chm");

就可以了


可惜不是你,陪我到最后
2007-01-13 20:48
八秒钟
Rank: 1
等 级:新手上路
威 望:1
帖 子:42
专家分:0
注 册:2006-12-20
收藏
得分:0 
还要不要声明什么东西啊???
把它所要用到的都写出来呗
2007-01-13 20:57
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
Runtime.getRuntime().exec("hh my.chm");

把这句话放到你的事件处理函数里面就可以了

你点帮助的时候,就执行这一条

可惜不是你,陪我到最后
2007-01-13 20:58
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
事件处理不用我帮你写吧

可惜不是你,陪我到最后
2007-01-13 20:58
八秒钟
Rank: 1
等 级:新手上路
威 望:1
帖 子:42
专家分:0
注 册:2006-12-20
收藏
得分:0 

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.LinkedList;
public class Memory extends JFrame implements ActionListener
{
JMenuBar bar;
JMenu fileMenu,help;
JMenuItem 初级,中级,高级,初级排行榜,中级排行榜,高级排行榜,帮助;
Block block[];
ImageIcon icon[];
MemoryTestPane 记忆测试板=null;
File file初级=new File("初级记忆排行榜.txt"),
file中级=new File("中级记忆排行榜.txt"),
file高级=new File("高级记忆排行榜.txt");

LinkedList 成绩表=null;
ShowRecord 显示成绩表对话框=null;
int m=5,n=6;
int 图标个数=0;
Container con=null;
JTextField 提示条=null;
File gradeFile=null;
public Memory()
{
block=new Block[m*n];
图标个数=m;
icon=new ImageIcon[图标个数];
for(int i=0;i<icon.length;i++)
{
icon[i]=new ImageIcon("a"+i+".gif");
}
for(int i=0;i<block.length;i++)
{
block[i]=new Block();
block[i].设置关闭时的图标(new ImageIcon("关闭.gif"));
}

bar=new JMenuBar();
help=new JMenu("帮助");
fileMenu=new JMenu("记忆力测试");
初级=new JMenuItem("初级");
中级=new JMenuItem("中级");
高级=new JMenuItem("高级");
fileMenu.setMnemonic('G');
初级.setMnemonic('B');
中级.setMnemonic('I');
高级.setMnemonic('E');
高级排行榜=new JMenuItem("高级排行榜");
中级排行榜=new JMenuItem("中级排行榜");
初级排行榜=new JMenuItem("初级排行榜");
帮助=new JMenuItem("帮助");
初级.setMnemonic('T');
fileMenu.add(初级);
fileMenu.add(中级);
fileMenu.add(高级);
fileMenu.add(初级排行榜);
fileMenu.add(中级排行榜);
fileMenu.add(高级排行榜);
help.add(帮助);
bar.add(fileMenu);
bar.add(help);
setJMenuBar(bar);
初级.addActionListener(this);
中级.addActionListener(this);
高级.addActionListener(this);
初级排行榜.addActionListener(this);
中级排行榜.addActionListener(this);
高级排行榜.addActionListener(this);
帮助.addActionListener(this);
成绩表=new LinkedList();
if(!file初级.exists())
{
try{
FileOutputStream out=new FileOutputStream("初级记忆排行榜.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(成绩表);
object_out.close();
out.close();
}
catch(IOException e)
{
}
}
if(!file中级.exists())
{
try{
FileOutputStream out=new FileOutputStream("中级记忆排行榜.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(成绩表);
object_out.close();
out.close();
}
catch(IOException e)
{
}
}
if(!file高级.exists())
{
try{
FileOutputStream out=new FileOutputStream("高级记忆排行榜.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(成绩表);
object_out.close();
out.close();
}
catch(IOException e)
{
}
}
gradeFile=file初级;
setBounds(100,100,300,260);
setVisible(true);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
con=getContentPane();
记忆测试板=new MemoryTestPane(block,icon,m,n,gradeFile);
提示条=new JTextField("初级:您需要连续找出"+6+"个相同图标的方块");
提示条.setEditable(false);
提示条.setForeground(Color.red);
con.add(记忆测试板,BorderLayout.CENTER);
con.add(提示条,BorderLayout.SOUTH);
con.validate();
this.validate();
}
public void 给出级别测试(int 宽,int 高,File f)
{
m=宽;
n=高;
图标个数=m;
gradeFile=f;
block=new Block[m*n];
icon=new ImageIcon[图标个数];
for(int i=0;i<icon.length;i++)
{
icon[i]=new ImageIcon("a"+i+".gif");
}
for(int i=0;i<block.length;i++)
{
block[i]=new Block();
block[i].设置关闭时的图标(new ImageIcon("关闭.gif"));
}
记忆测试板=new MemoryTestPane(block,icon,m,n,gradeFile);
con.removeAll();
con.add(记忆测试板,BorderLayout.CENTER);
con.add(提示条,BorderLayout.SOUTH);
con.validate();
this.validate();
}
public void actionPerformed(ActionEvent event)
{
if(event.getSource()==初级)
{
给出级别测试(5,6,file初级);
setBounds(100,100,300,260);
this.validate();
提示条.setText("初级:您需要连续找出"+6+"个相同图标的方块");
}
if(event.getSource()==中级)
{
给出级别测试(6,7,file中级);
setBounds(100,100,340,280);
this.validate();
提示条.setText("中级:您需要连续找出"+7+"个相同图标的方块");
}
if(event.getSource()==高级)
{
给出级别测试(7,8,file高级);
setBounds(100,100,360,300);
this.validate();
提示条.setText("高级:您需要连续找出"+8+"个相同图标的方块");
}
if(event.getSource()==高级排行榜)
{
显示成绩表对话框=new ShowRecord(this,file高级);
显示成绩表对话框.setVisible(true);
}
if(event.getSource()==中级排行榜)
{
显示成绩表对话框=new ShowRecord(this,file中级);
显示成绩表对话框.setVisible(true);
}
if(event.getSource()==初级排行榜)
{
显示成绩表对话框=new ShowRecord(this,file初级);
显示成绩表对话框.setVisible(true);
}
if(event.getSource()==帮助)
{
????????????????????????
}

}

public static void main(String args[])
{
new Memory();
}
}







就是上面绿色部分怎么写啊??只加那么一句不行啊

2007-01-13 21:12
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
if(event.getSource()==帮助)
{
Runtime.getRuntime().exec("hh my.chm");
}

前提是你的帮助文件名字叫my.chm,并且放在你的class文件一个目录

可惜不是你,陪我到最后
2007-01-13 21:14
八秒钟
Rank: 1
等 级:新手上路
威 望:1
帖 子:42
专家分:0
注 册:2006-12-20
收藏
得分:0 
Memory.java:196: unreported exception java.io.IOException; must be caught or dec
lared to be thrown
Runtime.getRuntime().exec("hh my.chm");
^
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
Exception in thread "main" java.lang.NoClassDefFoundError: Memory



上面是错误提示,文件的确放在了同一文件夹内啊
2007-01-13 21:19
快速回复:急求"帮助文件"的源码
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030941 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved