Java控制台独立?
我用java做了一个简单的Java控制台独立?,java,swing,jar,console,jframe,Java,Swing,Jar,Console,Jframe,我用java做了一个简单的JFrame。但是我也希望在打开real.jar文件的同时打开一个开发者控制台。第8行是我想在控制台窗口中输出的文本,它应该从JFrame旁边开始 代码: 您只需要在运行.jar时启用Java控制台。为此,请按照官方文档中的步骤进行操作。根据您的操作系统,它可能会有一些变化,但这正是您的想法。您只需要在运行.jar时启用Java控制台即可。为此,请按照官方文档中的步骤进行操作。根据您的操作系统,它可能会有一些变化,但这正是您的想法。您只需要在运行.jar时启用Java控
JFrame
。但是我也希望在打开real.jar文件的同时打开一个开发者控制台。第8行是我想在控制台窗口中输出的文本,它应该从JFrame
旁边开始
代码:
您只需要在运行
.jar
时启用Java控制台。为此,请按照官方文档中的步骤进行操作。根据您的操作系统,它可能会有一些变化,但这正是您的想法。您只需要在运行.jar
时启用Java控制台即可。为此,请按照官方文档中的步骤进行操作。根据您的操作系统,它可能会有一些变化,但这正是您的想法。您只需要在运行.jar
时启用Java控制台即可。为此,请按照官方文档中的步骤进行操作。根据您的操作系统,它可能会有一些变化,但这正是您的想法。您只需要在运行.jar
时启用Java控制台即可。为此,请按照官方文档中的步骤进行操作。根据您的操作系统,它可能会有一点变化,但这正是您的想法。您始终可以显示自己的控制台,该控制台输出写入System.out的内容:
import java.awt.Color;
import java.awt.Font;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintStream;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class Launcher extends JFrame {
private static final long serialVersionUID = 1L;
private static class Console {
private final JFrame frame;
public Console() {
frame = new JFrame();
final JTextArea textArea = new JTextArea(24, 80);
textArea.setBackground(Color.BLACK);
textArea.setForeground(Color.LIGHT_GRAY);
textArea.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 12));
System.setOut(new PrintStream(new OutputStream() {
@Override
public void write(int b) throws IOException {
textArea.append(String.valueOf((char) b));
}
}));
frame.add(textArea);
}
public void init() {
frame.pack();
frame.setVisible(true);
}
public JFrame getFrame() {
return frame;
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Console console = new Console();
console.init();
Launcher launcher = new Launcher();
launcher.setVisible(true);
console.getFrame().setLocation(
launcher.getX() + launcher.getWidth()
+ launcher.getInsets().right, launcher.getY());
System.out.println("Started Launcher...");
}
});
}
private Launcher() {
super("DevCity13 - Launcher (Alpha)");
setSize(600, 600);
setResizable(false);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
您可以始终显示自己的控制台,该控制台输出写入System.out的内容:
import java.awt.Color;
import java.awt.Font;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintStream;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class Launcher extends JFrame {
private static final long serialVersionUID = 1L;
private static class Console {
private final JFrame frame;
public Console() {
frame = new JFrame();
final JTextArea textArea = new JTextArea(24, 80);
textArea.setBackground(Color.BLACK);
textArea.setForeground(Color.LIGHT_GRAY);
textArea.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 12));
System.setOut(new PrintStream(new OutputStream() {
@Override
public void write(int b) throws IOException {
textArea.append(String.valueOf((char) b));
}
}));
frame.add(textArea);
}
public void init() {
frame.pack();
frame.setVisible(true);
}
public JFrame getFrame() {
return frame;
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Console console = new Console();
console.init();
Launcher launcher = new Launcher();
launcher.setVisible(true);
console.getFrame().setLocation(
launcher.getX() + launcher.getWidth()
+ launcher.getInsets().right, launcher.getY());
System.out.println("Started Launcher...");
}
});
}
private Launcher() {
super("DevCity13 - Launcher (Alpha)");
setSize(600, 600);
setResizable(false);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
您可以始终显示自己的控制台,该控制台输出写入System.out的内容:
import java.awt.Color;
import java.awt.Font;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintStream;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class Launcher extends JFrame {
private static final long serialVersionUID = 1L;
private static class Console {
private final JFrame frame;
public Console() {
frame = new JFrame();
final JTextArea textArea = new JTextArea(24, 80);
textArea.setBackground(Color.BLACK);
textArea.setForeground(Color.LIGHT_GRAY);
textArea.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 12));
System.setOut(new PrintStream(new OutputStream() {
@Override
public void write(int b) throws IOException {
textArea.append(String.valueOf((char) b));
}
}));
frame.add(textArea);
}
public void init() {
frame.pack();
frame.setVisible(true);
}
public JFrame getFrame() {
return frame;
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Console console = new Console();
console.init();
Launcher launcher = new Launcher();
launcher.setVisible(true);
console.getFrame().setLocation(
launcher.getX() + launcher.getWidth()
+ launcher.getInsets().right, launcher.getY());
System.out.println("Started Launcher...");
}
});
}
private Launcher() {
super("DevCity13 - Launcher (Alpha)");
setSize(600, 600);
setResizable(false);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
您可以始终显示自己的控制台,该控制台输出写入System.out的内容:
import java.awt.Color;
import java.awt.Font;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintStream;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class Launcher extends JFrame {
private static final long serialVersionUID = 1L;
private static class Console {
private final JFrame frame;
public Console() {
frame = new JFrame();
final JTextArea textArea = new JTextArea(24, 80);
textArea.setBackground(Color.BLACK);
textArea.setForeground(Color.LIGHT_GRAY);
textArea.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 12));
System.setOut(new PrintStream(new OutputStream() {
@Override
public void write(int b) throws IOException {
textArea.append(String.valueOf((char) b));
}
}));
frame.add(textArea);
}
public void init() {
frame.pack();
frame.setVisible(true);
}
public JFrame getFrame() {
return frame;
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Console console = new Console();
console.init();
Launcher launcher = new Launcher();
launcher.setVisible(true);
console.getFrame().setLocation(
launcher.getX() + launcher.getWidth()
+ launcher.getInsets().right, launcher.getY());
System.out.println("Started Launcher...");
}
});
}
private Launcher() {
super("DevCity13 - Launcher (Alpha)");
setSize(600, 600);
setResizable(false);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
那不是我需要的,你看。。。我希望打开.Jar文件的最终用户获得一个控制台(如windows cmd),在那里它在第8行打印文本。。。有办法吗?如果您不愿意实现自己的控制台,我看不到其他办法。您可以使用
JTextField
创建另一个JFrame
,并显示控制台消息。在这种情况下,您必须将System.out
更改为其他内容,以便在新的JFrame
上存储和显示这些消息。您知道,这不是我所需要的。。。我希望打开.Jar文件的最终用户获得一个控制台(如windows cmd),在那里它在第8行打印文本。。。有办法吗?如果您不愿意实现自己的控制台,我看不到其他办法。您可以使用JTextField
创建另一个JFrame
,并显示控制台消息。在这种情况下,您必须将System.out
更改为其他内容,以便在新的JFrame
上存储和显示这些消息。您知道,这不是我所需要的。。。我希望打开.Jar文件的最终用户获得一个控制台(如windows cmd),在那里它在第8行打印文本。。。有办法吗?如果您不愿意实现自己的控制台,我看不到其他办法。您可以使用JTextField
创建另一个JFrame
,并显示控制台消息。在这种情况下,您必须将System.out
更改为其他内容,以便在新的JFrame
上存储和显示这些消息。您知道,这不是我所需要的。。。我希望打开.Jar文件的最终用户获得一个控制台(如windows cmd),在那里它在第8行打印文本。。。有办法吗?如果您不愿意实现自己的控制台,我看不到其他办法。您可以使用JTextField
创建另一个JFrame
,并显示控制台消息。在这种情况下,您必须将系统.out
更改为其他内容,以便在新的JFrame
上存储和显示这些消息。是的,这相当准确!我唯一想知道的是,如果你知道的话,是否有办法给控制台一个标题?谢谢你的密码员(顺便说一句!)@valrossen_Oliver只需在控制台框架上调用setTitle(“某些标题”)
。是的,这有点准确!我唯一想知道的是,如果你知道的话,是否有办法给控制台一个标题?谢谢你的密码员(顺便说一句!)@valrossen_Oliver只需在控制台框架上调用setTitle(“某些标题”)
。是的,这有点准确!我唯一想知道的是,如果你知道的话,是否有办法给控制台一个标题?谢谢你的密码员(顺便说一句!)@valrossen_Oliver只需在控制台框架上调用setTitle(“某些标题”)
。是的,这有点准确!我唯一想知道的是,如果你知道的话,是否有办法给控制台一个标题?谢谢你的密码员(顺便说一句!)@valrossen_Oliver只需在控制台框架上调用setTitle(“某些标题”)
。