我很难找到一种方法来在我的主类中执行打印方法,从另一个类中使用JButton
.
这是我Mainclass
要执行的方法。
public void genInReceipt(Date in, String res)
throws Exception
{
log.debug("start printing...");
// TOP
serialPort.writeString(new String(new byte[] {ESC, 'J', 0x4A}));
serialPort.writeString(new String(new byte[] {ESC, 'J', 0x4A}));
serialPort.writeString(new String(new byte[] {ESC, 'J', 0x4A}));
serialPort.writeString(new String(new byte[] {ESC, 'J', 0x4A}));
serialPort.writeString(new String(new byte[] {ESC, '@', 0x1b, 0x61, 0x01}));
serialPort.writeString(new String(new byte[] {ESC, '!', 0x08}));
serialPort.writeString(new String(new byte[] {ESC, 'E', 0x1b}));
serialPort.writeString(String.format("%s\n", "PLAZA INDONESIA"));
serialPort.writeString(new String(new byte[] {ESC, 'J', 0x4A}));
serialPort.writeString(new String(new byte[] {ESC, 'J', 0x4A}));
// PARAGRAPH 1 Still Fix(Add Parimeter)
serialPort.writeString(new String(new byte[] {ESC, '!', 0x08, ESC, 'a', 0x00}) + String.format("%s\n"," 1343KZT/MOBIL"));// + new String(new byte[] {ESC, 'E', 0x1B, GS, '!', 0x10, 0x01}) + String.format(" MOBIL"));
serialPort.writeString(String.format("%s\n", " PP6-ADE SILFIANAH"));
serialPort.writeString(String.format(" In : %s\n", df.format(in)));
serialPort.writeString(String.format(" Out : %s\n", "21 Jul 2016 17:00:00"));
serialPort.writeString(String.format(" Duration: %s\n", "1 hours 29 minutes")); //Pakegate
serialPort.writeString(new String(new byte[] {ESC, 'J', 0x4A}));
serialPort.writeString(String.format(" Sewa Parkir: %s\n", "Rp 6.000"));
serialPort.writeString(new String(new byte[] {ESC, 'J', 0x4A}));
// BOTTOMLINE
serialPort.writeString(new String(new byte[] {ESC, 'a', 0x01}));
serialPort.writeString(new String("TERIMA KASIH\n".getBytes()));
serialPort.writeString(new String("ATAS KUNJUNGAN ANDA\n".getBytes()));
log.debug(" ... done");
serialPort.writeString(new String(new byte[] {GS, 'v', 0x1D}));
serialPort.writeString(new String(new byte[] {0x1b, 0x64, 0x05}));
serialPort.writeString(new String(new byte[] {0x1d, 0x56, 0x42, 0x00}));
}
这是我的 GUI 代码
package unibit.embedded.parking;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JOptionPane;
public class GUIPrinter {
public static void main(String[] args) {
final JFrame frame = new JFrame();
JPanel panel = new JPanel();
JButton button1 = new JButton();
frame.add(panel);
panel.add(button1);
frame.setVisible(true);
button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
//What i have to add here to execute genInReciept method?
}
});
}
}
我知道我的代码有问题,有人可以帮助我吗?