-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathQRScreen.java
84 lines (66 loc) · 2.17 KB
/
QRScreen.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
import javafx.embed.swing.JFXPanel;
import javafx.scene.Scene;
import javafx.scene.web.WebView;
import javax.swing.*;
import java.awt.*;
import java.io.*;
import java.net.URL;
/**
* Created by Vishnu on 11/20/2016.
*/
public class QRScreen {
JFXPanel fxPanel;
WebView wv;
JFrame frame;
String text;
QRScreen(String message) {
text = "";
try {
setQR(message);
} catch (IOException e) {
e.printStackTrace();
}
try {
fxPanel = new JFXPanel ();
// create JavaFX scene
com.sun.javafx.application.PlatformImpl.runLater ( new Runnable () {
@Override
public void run () {
wv = new WebView ();
System.out.println("Reading file");
URL urlHello = getClass().getResource("webqr.html");
//wv.getEngine().load(urlHello.toExternalForm());
wv.getEngine().loadContent(text);
fxPanel.setScene ( new Scene( wv, 400, 500 ) );
frame = new JFrame ( "Join the session" );
frame.add ( new JScrollPane ( fxPanel ) );
frame.setDefaultCloseOperation ( JFrame.DISPOSE_ON_CLOSE);
frame.setVisible ( true );
frame.pack ();
}
} );
} catch ( Exception ex ) {
}
}
private void setQR(String message) throws IOException {
try {
URL urlHello = getClass().getResource("qr.html");
FileReader fr = new FileReader(urlHello.getPath());
BufferedReader br = new BufferedReader(fr);
text = "";
String S = "";
while((S=br.readLine())!=null) {
if(S.indexOf("%%QRCODEDATA%%")!=-1)
S = S.replace("%%QRCODEDATA%%", message);
text += S+"\n";
}
br.close();
fr.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
public static void main(String ar[]) {
QRScreen sc = new QRScreen("ass");
}
}