我有html文件/目录,我想将它们转换为.chm帮助文件,在Linux下使用终端的命令行?
任何帮助,将不胜感激.
我希望通过覆盖它上面的鼠标事件来启用JLabel上的拖放功能,但是当我在mousePressed事件中定义拖放时,mouseReleased不会对该JLabel生效.难道我做错了什么 ?
Thumbnails[I_Loop].setText("1");
Thumbnails[I_Loop].setTransferHandler(new TransferHandler("text"));
Thumbnails[I_Loop].addMouseListener( new MouseAdapter() {
public void mouseReleased(MouseEvent me) {
System.out.println("here mouse released");
}
public void mousePressed(MouseEvent me) {
System.out.println("here mouse pressed");
JComponent comp = (JComponent) me.getSource();
TransferHandler handler = comp.getTransferHandler();
handler.exportAsDrag(comp, me, TransferHandler.COPY);
});
Run Code Online (Sandbox Code Playgroud)
*缩略图是JLabel的数组
运行程序时,拖放工作,但"此处鼠标已释放"语句不会打印.但是,当我从mousePressed()方法中删除负责DND的代码时,将打印"此处鼠标已释放".
这段代码有什么问题?
我想在JFrame顶部放置两个单独的工具栏,并且能够将每个工具栏单独移动到框架的东,西或南,我尝试使用BorderLayout,但这没有帮助,我知道我可以放置每个一个在BorderLayout的面板上,并能够移动它们,但我真正需要的是将它们放在一起,并且能够单独移动每个,这段代码不起作用,但它有助于理解我的问题,请任何人帮帮我吗?
package test;
import java.awt.Dimension;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class testform extends javax.swing.JFrame {
public testform() {
initComponents();
jPanel1.removeAll();
jPanel1.setPreferredSize(new Dimension(800,800));
MultiBorderLayout amMultiBorderLayout = new MultiBorderLayout(0, 0);
jPanel1.add("North", jToolBar1);
jPanel1.add("North", jToolBar2);
jPanel1.add("Center",jPanel2);
jPanel1.setLayout(amMultiBorderLayout);
jPanel1.revalidate();
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
jPanel2 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jToolBar1 = new javax.swing.JToolBar();
jButton1 = new javax.swing.JButton();
jToolBar2 = new javax.swing.JToolBar();
jButton2 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); …Run Code Online (Sandbox Code Playgroud)