Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Spiel;
- import java.awt.Color;
- import java.awt.Container;
- import java.awt.Font;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.awt.event.KeyAdapter;
- import java.awt.event.KeyEvent;
- import javax.swing.JButton;
- import javax.swing.JFrame;
- import javax.swing.JPanel;
- import javax.swing.JScrollPane;
- import javax.swing.JTextArea;
- import javax.swing.JTextField;
- import javax.swing.text.DefaultCaret;
- public class MyPanelRater extends JPanel{
- public Main m;
- public Connection con;
- public MyPanelRater(int width,int height) {
- this.show(width, height);
- }
- public GetRandomWord randomword;
- private static DrawAreaRater drawArea;
- private JButton send,forcenextround,kickmenue;
- private static JTextArea log;
- private JScrollPane anzeige;
- private JTextField eingabe;
- private static String word;
- private static JTextField poins;
- public static JFrame frame;
- public void show(int width,int height) {
- // create main frame
- frame = new JFrame("Raten");
- frame.setLocationRelativeTo(null);
- frame.setSize(width, height);
- int x = (frame.getHeight()/2);
- int y = (frame.getWidth()/2);
- frame.setBounds(frame.getBounds().x-y, frame.getBounds().y-x, frame.getWidth(), frame.getHeight());
- int minusx = frame.getWidth()-220;
- int minusPanelx = frame.getWidth()-260;
- int minusPanely = frame.getHeight()-70;
- Container content = frame.getContentPane();
- //Set buttons Action listener
- ActionListener actionListener = new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- if (e.getSource() == send) {
- if(eingabe.isEnabled()==false){
- return;
- }
- eingabe.setText(eingabe.getText().replaceAll(" ", ""));
- if(eingabe.getText().equals("")){
- return;
- }
- if(eingabe.getText().contains("https")||eingabe.getText().contains(".")){
- return;
- }
- if(eingabe.getText().equalsIgnoreCase(word)){
- if(con.isServer()==true){
- con.rollenswaper(m.UserName);
- }else{
- con.serversendMessage("erraten "+m.UserName);
- }
- eingabe.setText(word);
- eingabe.setEnabled(false);
- return;
- }else{
- con.serversendMessage("ratewort "+m.UserName+" "+eingabe.getText().replaceAll(" ", "_"));
- if(con.isServer()==true){
- AddLogText(m.UserName+": "+eingabe.getText().replaceAll(" ", "_"));
- }
- }
- eingabe.setText("");
- }else if(e.getSource()==forcenextround){
- con.forceNextRound();
- }else if(e.getSource()==kickmenue){
- new KickWindow();
- }
- }
- };
- //
- addLog(frame,minusx);
- //Rate feld
- eingabe = new JTextField();
- frame.add(eingabe);
- eingabe.setText("Das wort hier Raten");
- eingabe.addKeyListener(new KeyAdapter() {
- @Override
- public void keyPressed(KeyEvent e) {
- if(e.getKeyCode() == KeyEvent.VK_ENTER){
- if(eingabe.isEnabled()==false){
- return;
- }
- eingabe.setText(eingabe.getText().replaceAll(" ", ""));
- if(eingabe.getText().equals("")){
- return;
- }
- if(eingabe.getText().contains("https")||eingabe.getText().contains(".")){
- eingabe.setText("");
- return;
- }
- if(eingabe.getText().equalsIgnoreCase(word)){
- if(con.isServer()==true){
- con.rollenswaper(m.UserName);
- }else{
- con.serversendMessage("erraten "+m.UserName);
- }
- eingabe.setText(word);
- eingabe.setEnabled(false);
- return;
- }else{
- con.serversendMessage("ratewort "+m.UserName+" "+eingabe.getText().replaceAll(" ", "_"));
- if(con.isServer()==true){
- AddLogText(m.UserName+": "+eingabe.getText().replaceAll(" ", "_"));
- }
- }
- eingabe.setText("");
- }
- }
- });
- eingabe.setBounds(minusx, 430, 200, 30);
- //send Button
- send = new JButton("send");
- send.setBounds(minusx, 470, 200, 30);
- send.addActionListener(actionListener);
- frame.add(send);
- forcenextround = new JButton("Force Next Round");
- forcenextround.setBounds(minusx, 520, 200, 30);
- forcenextround.addActionListener(actionListener);
- if(con.isServer()){
- frame.add(forcenextround);
- }
- //KickManue
- kickmenue = new JButton("Kick menue");
- kickmenue.setBounds(minusx, 570, 200, 30);
- kickmenue.addActionListener(actionListener);
- if(con.isServer()){
- frame.add(kickmenue);
- }
- //Poins Anzeige
- poins = new JTextField();
- Font font = new Font("Calibri", Font.BOLD, 15);
- poins.setForeground(new Color(0, 0, 0));
- poins.setBackground(new Color(200, 200, 200));
- poins.setBounds(minusx, 0, 200, 20);
- poins.setBorder(null);
- poins.setFont(font);
- poins.setText("Punke: **");
- poins.setEditable(false);
- frame.add(poins);
- // create draw area
- drawArea = new DrawAreaRater(minusPanelx,minusPanely);
- drawArea.radius = 4;
- // add to content pane
- content.setBackground(new Color(200, 200, 200));
- content.add(drawArea);
- //Setze Frame größe
- frame.setState(JFrame.NORMAL);
- //Setze frame nicht größenverziebar
- frame.setResizable(false);
- // can close frame
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- // show the swing paint result
- frame.setVisible(true);
- // 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">
- }
- private void addLog(JFrame controls,int minusx) {
- Font font = new Font("Calibri", Font.BOLD, 15);
- log = new JTextArea();
- log.setEditable(false);
- log.setFont(font);
- log.setForeground(new Color(0, 0, 0));
- String Text="Rateverlauf:\n";
- log.setText(Text);
- anzeige = new JScrollPane(log);
- DefaultCaret caret = (DefaultCaret)log.getCaret();
- caret.setUpdatePolicy(DefaultCaret.ALWAYS_UPDATE);
- anzeige.setBounds(minusx, 20, 200, 400);
- controls.add(anzeige);
- }
- public void setword(String word){
- this.word = word;
- }
- public static void drawLine(Double double1, Double double2, Double double3, Double double4, Double double5,Double double6 ,Double double7, Double double8){
- drawArea.drawLine(double1, double2, double3, double4, double5, double6, double7, double8);
- }
- public static void clear(){
- drawArea.clear();
- }
- public static void rollenswaper(){
- frame.dispose();
- frame=null;
- }
- public static void setPoinsValue(int value){
- poins.setText("Punke: "+value);
- }
- public static void AddLogText(String word){
- log.setText(log.getText()+word+"\n");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement