Advertisement
TrodelHD

Untitled

Apr 3rd, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.29 KB | None | 0 0
  1. package Spiel;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Container;
  5. import java.awt.Font;
  6. import java.awt.event.ActionEvent;
  7. import java.awt.event.ActionListener;
  8. import java.awt.event.KeyAdapter;
  9. import java.awt.event.KeyEvent;
  10.  
  11. import javax.swing.JButton;
  12. import javax.swing.JFrame;
  13. import javax.swing.JPanel;
  14. import javax.swing.JScrollPane;
  15. import javax.swing.JTextArea;
  16. import javax.swing.JTextField;
  17. import javax.swing.text.DefaultCaret;
  18.  
  19. public class MyPanelRater extends JPanel{
  20.  
  21. public Main m;
  22. public Connection con;
  23.  
  24. public MyPanelRater(int width,int height) {
  25.  
  26. this.show(width, height);
  27. }
  28. public GetRandomWord randomword;
  29. private static DrawAreaRater drawArea;
  30. private JButton send,forcenextround,kickmenue;
  31. private static JTextArea log;
  32. private JScrollPane anzeige;
  33. private JTextField eingabe;
  34. private static String word;
  35. private static JTextField poins;
  36. public static JFrame frame;
  37. public void show(int width,int height) {
  38. // create main frame
  39. frame = new JFrame("Raten");
  40.  
  41. frame.setLocationRelativeTo(null);
  42.  
  43. frame.setSize(width, height);
  44. int x = (frame.getHeight()/2);
  45. int y = (frame.getWidth()/2);
  46. frame.setBounds(frame.getBounds().x-y, frame.getBounds().y-x, frame.getWidth(), frame.getHeight());
  47.  
  48. int minusx = frame.getWidth()-220;
  49. int minusPanelx = frame.getWidth()-260;
  50. int minusPanely = frame.getHeight()-70;
  51.  
  52. Container content = frame.getContentPane();
  53. //Set buttons Action listener
  54. ActionListener actionListener = new ActionListener() {
  55. public void actionPerformed(ActionEvent e) {
  56.  
  57.  
  58.  
  59.  
  60. if (e.getSource() == send) {
  61. if(eingabe.isEnabled()==false){
  62. return;
  63. }
  64.  
  65. eingabe.setText(eingabe.getText().replaceAll(" ", ""));
  66.  
  67. if(eingabe.getText().equals("")){
  68. return;
  69. }
  70. if(eingabe.getText().contains("https")||eingabe.getText().contains(".")){
  71. return;
  72. }
  73.  
  74. if(eingabe.getText().equalsIgnoreCase(word)){
  75. if(con.isServer()==true){
  76. con.rollenswaper(m.UserName);
  77. }else{
  78. con.serversendMessage("erraten "+m.UserName);
  79. }
  80. eingabe.setText(word);
  81. eingabe.setEnabled(false);
  82. return;
  83. }else{
  84. con.serversendMessage("ratewort "+m.UserName+" "+eingabe.getText().replaceAll(" ", "_"));
  85. if(con.isServer()==true){
  86. AddLogText(m.UserName+": "+eingabe.getText().replaceAll(" ", "_"));
  87. }
  88. }
  89. eingabe.setText("");
  90. }else if(e.getSource()==forcenextround){
  91. con.forceNextRound();
  92. }else if(e.getSource()==kickmenue){
  93. new KickWindow();
  94. }
  95. }
  96. };
  97. //
  98. addLog(frame,minusx);
  99. //Rate feld
  100. eingabe = new JTextField();
  101. frame.add(eingabe);
  102. eingabe.setText("Das wort hier Raten");
  103. eingabe.addKeyListener(new KeyAdapter() {
  104. @Override
  105. public void keyPressed(KeyEvent e) {
  106. if(e.getKeyCode() == KeyEvent.VK_ENTER){
  107.  
  108.  
  109. if(eingabe.isEnabled()==false){
  110. return;
  111. }
  112.  
  113. eingabe.setText(eingabe.getText().replaceAll(" ", ""));
  114.  
  115. if(eingabe.getText().equals("")){
  116. return;
  117. }
  118. if(eingabe.getText().contains("https")||eingabe.getText().contains(".")){
  119. eingabe.setText("");
  120. return;
  121. }
  122.  
  123.  
  124. if(eingabe.getText().equalsIgnoreCase(word)){
  125. if(con.isServer()==true){
  126. con.rollenswaper(m.UserName);
  127. }else{
  128. con.serversendMessage("erraten "+m.UserName);
  129. }
  130. eingabe.setText(word);
  131. eingabe.setEnabled(false);
  132. return;
  133. }else{
  134. con.serversendMessage("ratewort "+m.UserName+" "+eingabe.getText().replaceAll(" ", "_"));
  135. if(con.isServer()==true){
  136. AddLogText(m.UserName+": "+eingabe.getText().replaceAll(" ", "_"));
  137. }
  138. }
  139. eingabe.setText("");
  140. }
  141. }
  142.  
  143. });
  144. eingabe.setBounds(minusx, 430, 200, 30);
  145. //send Button
  146. send = new JButton("send");
  147. send.setBounds(minusx, 470, 200, 30);
  148. send.addActionListener(actionListener);
  149. frame.add(send);
  150.  
  151. forcenextround = new JButton("Force Next Round");
  152. forcenextround.setBounds(minusx, 520, 200, 30);
  153. forcenextround.addActionListener(actionListener);
  154. if(con.isServer()){
  155. frame.add(forcenextround);
  156. }
  157. //KickManue
  158. kickmenue = new JButton("Kick menue");
  159. kickmenue.setBounds(minusx, 570, 200, 30);
  160. kickmenue.addActionListener(actionListener);
  161. if(con.isServer()){
  162. frame.add(kickmenue);
  163. }
  164. //Poins Anzeige
  165. poins = new JTextField();
  166. Font font = new Font("Calibri", Font.BOLD, 15);
  167. poins.setForeground(new Color(0, 0, 0));
  168. poins.setBackground(new Color(200, 200, 200));
  169. poins.setBounds(minusx, 0, 200, 20);
  170. poins.setBorder(null);
  171. poins.setFont(font);
  172. poins.setText("Punke: **");
  173. poins.setEditable(false);
  174. frame.add(poins);
  175. // create draw area
  176. drawArea = new DrawAreaRater(minusPanelx,minusPanely);
  177. drawArea.radius = 4;
  178. // add to content pane
  179. content.setBackground(new Color(200, 200, 200));
  180. content.add(drawArea);
  181. //Setze Frame größe
  182.  
  183.  
  184. frame.setState(JFrame.NORMAL);
  185.  
  186.  
  187. //Setze frame nicht größenverziebar
  188. frame.setResizable(false);
  189. // can close frame
  190. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  191. // show the swing paint result
  192. frame.setVisible(true);
  193.  
  194. // Now you can try our Swing Paint !!! Enjoy <img draggable="false" class="emoji" alt="😀" src="https://s.w.org/images/core/emoji/2.3/svg/1f600.svg">
  195. }
  196. private void addLog(JFrame controls,int minusx) {
  197. Font font = new Font("Calibri", Font.BOLD, 15);
  198.  
  199. log = new JTextArea();
  200. log.setEditable(false);
  201. log.setFont(font);
  202. log.setForeground(new Color(0, 0, 0));
  203. String Text="Rateverlauf:\n";
  204. log.setText(Text);
  205. anzeige = new JScrollPane(log);
  206. DefaultCaret caret = (DefaultCaret)log.getCaret();
  207. caret.setUpdatePolicy(DefaultCaret.ALWAYS_UPDATE);
  208. anzeige.setBounds(minusx, 20, 200, 400);
  209. controls.add(anzeige);
  210.  
  211. }
  212. public void setword(String word){
  213. this.word = word;
  214. }
  215. public static void drawLine(Double double1, Double double2, Double double3, Double double4, Double double5,Double double6 ,Double double7, Double double8){
  216. drawArea.drawLine(double1, double2, double3, double4, double5, double6, double7, double8);
  217. }
  218. public static void clear(){
  219. drawArea.clear();
  220. }
  221. public static void rollenswaper(){
  222.  
  223. frame.dispose();
  224. frame=null;
  225.  
  226.  
  227. }
  228. public static void setPoinsValue(int value){
  229. poins.setText("Punke: "+value);
  230. }
  231.  
  232. public static void AddLogText(String word){
  233.  
  234. log.setText(log.getText()+word+"\n");
  235. }
  236.  
  237.  
  238. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement