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.Dimension;
- import java.awt.Font;
- import java.awt.Graphics;
- import java.awt.Image;
- import java.awt.Toolkit;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.awt.im.InputMethodHighlight;
- import java.io.File;
- import java.io.IOException;
- import javax.imageio.ImageIO;
- import javax.swing.ImageIcon;
- import javax.swing.JButton;
- import javax.swing.JColorChooser;
- import javax.swing.JFrame;
- import javax.swing.JLabel;
- import javax.swing.JOptionPane;
- import javax.swing.JPanel;
- import javax.swing.JScrollPane;
- import javax.swing.JSlider;
- import javax.swing.JTextArea;
- import javax.swing.JTextField;
- import javax.swing.event.ChangeEvent;
- import javax.swing.event.ChangeListener;
- import javax.swing.text.DefaultCaret;
- public class MyPanel extends JPanel {
- public Connection con;
- public MyPanel(int width,int height) {
- this.show(width, height);
- }
- DrawArea drawArea;
- private Color oldColor = Color.BLACK;
- private JButton Faben,Löschen,radirgummi,red,blue,green,black,yellow,forcenextround,kickmenue;
- private static JTextArea log;
- private JScrollPane anzeige;
- private JSlider Big;
- private static JTextField poins;
- public static JFrame frame;
- private static int oldSize;
- ActionListener actionListener = new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- if (e.getSource() == Faben) {
- setbig();
- JColorChooser colorChooser = new JColorChooser();
- Color c = colorChooser.showDialog(null, "color", oldColor);
- drawArea.setColor(c);
- oldColor = c;
- restoreOldsize();
- }else if (e.getSource() == Löschen) {
- drawArea.clear();
- con.serversendMessage("clear");
- restoreOldsize();
- }else if (e.getSource() == radirgummi) {
- oldSize=Big.getValue();
- drawArea.setColor(new Color(255, 255, 255));
- drawArea.radius = 30;
- Big.setValue(30);
- }else if(e.getSource()==red){
- setbig();
- drawArea.setColor(new Color(255, 0, 0));
- restoreOldsize();
- }else if(e.getSource()==blue){
- setbig();
- drawArea.setColor(new Color(0, 0, 255));
- restoreOldsize();
- }else if(e.getSource()==green){
- setbig();
- drawArea.setColor(new Color(0, 255, 0));
- restoreOldsize();
- }else if(e.getSource()==black){
- setbig();
- drawArea.setColor(new Color(0, 0, 0));
- restoreOldsize();
- }else if(e.getSource()==yellow){
- setbig();
- drawArea.setColor(new Color(255, 255, 0));
- restoreOldsize();
- }else if(e.getSource()==forcenextround){
- con.forceNextRound();
- }else if(e.getSource()==kickmenue){
- new KickWindow();
- }
- }
- };
- private void restoreOldsize(){
- if(oldSize!=0){
- Big.setValue(oldSize);
- oldSize=0;
- }
- }
- public void show(int width,int height) {
- // create main frame
- frame = new JFrame("Malen");
- //Set Position middle
- frame.setLocationRelativeTo(null);
- //Setze Frame größe
- 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());
- Container content = frame.getContentPane();
- frame.setState(JFrame.NORMAL);
- //
- int minusx = frame.getWidth()-220;
- int minusPanelx = frame.getWidth()-260;
- int minusPanely = frame.getHeight()-70;
- addLog(frame,minusx);
- //Faben Button
- Faben = new JButton("Farben");
- Faben.setBounds(minusx, 430, 200, 30);
- Faben.addActionListener(actionListener);
- frame.add(Faben);
- //Löschen
- Löschen = new JButton("Reset");
- Löschen.setBounds(minusx, 470, 200, 30);
- Löschen.addActionListener(actionListener);
- frame.add(Löschen);
- //Radirgummi
- radirgummi = new JButton("Radiergummi");
- radirgummi.setBounds(minusx, 550, 200, 30);
- radirgummi.addActionListener(actionListener);
- frame.add(radirgummi);
- //Force next round
- forcenextround = new JButton("Force Next Round");
- forcenextround.setBounds(minusx, 840, 200, 30);
- forcenextround.addActionListener(actionListener);
- if(con.isServer()){
- frame.add(forcenextround);
- }
- //KickManue
- kickmenue = new JButton("Kick menue");
- kickmenue.setBounds(minusx, 810, 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);
- //Größe einstellbar
- Big = new JSlider(JSlider.HORIZONTAL,1, 50, 4);
- frame.add(Big);
- Big.setMajorTickSpacing(49);
- Big.setMinorTickSpacing(1);
- Big.setPaintTicks(true);
- Big.setPaintLabels(true);
- Big.setBackground(new Color(200, 200, 200));
- Big.setForeground(new Color(0, 0, 0));
- Big.setBounds(minusx, 510, 200, 35);
- Big.addChangeListener(new ChangeListener() {
- @Override
- public void stateChanged(ChangeEvent e) {
- setbig();
- }
- });
- SetupColorButtons(minusx);
- // create draw area
- drawArea = new DrawArea(minusPanelx,minusPanely);
- drawArea.radius = 4;
- // add to content pane
- content.setBackground(new Color(200, 200, 200));
- content.add(drawArea);
- //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 SetupColorButtons(int minusx) {
- //red,blue,green,black,yellow
- red = new JButton("Rot");
- red.setBounds(minusx, 600, 200, 30);
- red.addActionListener(actionListener);
- red.setForeground(new Color(0, 0, 0));
- red.setBackground(new Color(255, 0, 0));
- frame.add(red);
- blue = new JButton("Blau");
- blue.setBounds(minusx, 640, 200, 30);
- blue.addActionListener(actionListener);
- blue.setForeground(new Color(0, 0, 0));
- blue.setBackground(new Color(0, 0, 255));
- frame.add(blue);
- green = new JButton("Grün");
- green.setBounds(minusx, 680, 200, 30);
- green.addActionListener(actionListener);
- green.setForeground(new Color(0, 0, 0));
- green.setBackground(new Color(0, 255, 0));
- frame.add(green);
- black = new JButton("Schwarz");
- black.setBounds(minusx, 720, 200, 30);
- black.addActionListener(actionListener);
- black.setForeground(new Color(255, 255, 255));
- black.setBackground(new Color(0, 0, 0));
- frame.add(black);
- yellow = new JButton("Gelb");
- yellow.setBounds(minusx, 760, 200, 30);
- yellow.addActionListener(actionListener);
- yellow.setForeground(new Color(0, 0, 0));
- yellow.setBackground(new Color(255, 255, 0));
- frame.add(yellow);
- }
- 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));
- anzeige = new JScrollPane(log);
- DefaultCaret caret = (DefaultCaret)log.getCaret();
- caret.setUpdatePolicy(DefaultCaret.ALWAYS_UPDATE);
- anzeige.setBounds(minusx, 20, 200, 400);
- controls.add(anzeige);
- }
- public static void AddLogText(String word){
- String Text="Rateversuche:\n";
- log.setText("Wort: "+word+"\n"+Text);
- }
- public static void addToLog(String text){
- log.setText(log.getText()+text+"\n");
- }
- public static void rollenswaper(){
- frame.dispose();
- frame=null;
- }
- public static boolean isAktive(){
- if(frame==null){
- return false;
- }else{
- return true;
- }
- }
- private void setbig(){
- int r = Big.getValue();
- drawArea.radius = r;
- }
- public static void setPoinsValue(int value){
- poins.setText("Punke: "+value);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement