gpt4 book ai didi

java - 使用netbeans java和windows在jframe中打开pdf文件

转载 作者:行者123 更新时间:2023-11-30 03:29:43 24 4
gpt4 key购买 nike

我创建了一个 netbeans GUI,我试图通过单击按钮打开 pdf 文件。它不适合我,这是我的代码

private void openBtnActionPerformed(java.awt.event.ActionEvent evt) {                                        
try{
Runtime.getRuntime().exec(" rundll32 url.d11,FileProtocolHandler"+"C:\\Users\\andre\\Downloads\\MathsLeavingCertApp\\MathsLeavingCertApp - Main\\MathsLeavingCertApp - Main\\2014MathsHL");

}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,"Error");
}



}

这是我遇到的错误

启动 url.d11 时出现问题找不到指定的模块。

有人不知道为什么它不起作用

最佳答案

我只会使用Desktop.getDesktop().open File(File)

请参阅此示例来说明这一点:

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Desktop;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.IOException;

import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.filechooser.FileFilter;

public class TestOpenFile {
JFileChooser chooser = new JFileChooser();

protected void initUI() {
JFrame frame = new JFrame("test");
Container cp = frame.getContentPane();
cp.setLayout(new BorderLayout());
final JButton chooseFile = new JButton("Select file...");
chooser.setFileFilter(new FileFilter() {

@Override
public String getDescription() {
return "*.pdf";
}

@Override
public boolean accept(File f) {
return f.isFile() && f.getName().toLowerCase().endsWith(".pdf");
}
});
chooseFile.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
int r = chooser.showOpenDialog(chooseFile);
if (r == JFileChooser.APPROVE_OPTION) {
try {
Desktop.getDesktop().open(chooser.getSelectedFile());
} catch (IOException e1) {
JOptionPane.showMessageDialog(chooseFile, "Could not open file " + chooser.getSelectedFile().getAbsolutePath());
}

}
}
});
cp.add(chooseFile);
frame.pack();
frame.setVisible(true);
}

public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException,
UnsupportedLookAndFeelException {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
SwingUtilities.invokeLater(new Runnable() {

@Override
public void run() {
new TestOpenFile().initUI();
}
});
}
}

关于java - 使用netbeans java和windows在jframe中打开pdf文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29355663/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com