Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- класс Main
- import java.awt.*;
- public class Main {
- public static void main(String[] args) {
- EventQueue.invokeLater(new Runnable() {
- @Override
- public void run() {
- MyWindow frame = new MyWindow("Очень удобное окно");
- //frame.pack();
- //frame.setSize(30,30);
- frame.setLocationRelativeTo(null);
- frame.setVisible(true);
- }
- });
- }
- }
- класс MyWindow
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.*;
- import java.io.FileNotFoundException;
- import java.io.IOException;
- /**
- * Created by Kubitskivlad on 21.11.16.
- */
- public class MyWindow extends JFrame {
- String sX = "";
- String sY = "";
- String sXX = "";
- String sYY = "";
- StringBuffer sss = new StringBuffer("");
- double x = 0.0;
- double y = 0.0;
- double xx = 0.0;
- double yy = 0.0;
- char backSpace = KeyEvent.VK_BACK_SPACE;
- char ch ;
- MyWindow(String nameFrame)
- {
- super(nameFrame);
- setDefaultCloseOperation(EXIT_ON_CLOSE);
- JPanel panel = new JPanel();
- panel.setLayout(null);
- final JButton button = new JButton();
- button.setSize(300,50);
- button.setLocation(100,100);
- panel.add(button);
- final JTextField textFieldX = new JTextField(25);
- textFieldX.setEditable(false);
- final JTextField textFieldY = new JTextField(25);
- textFieldY.setEditable(false);
- textFieldX.setSize(100,30);
- textFieldY.setSize(100,30);
- textFieldX.setLocation(900,615);
- textFieldY.setLocation(900,650);
- panel.add(textFieldX);
- panel.add(textFieldY);
- panel.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent e) {
- button.setLocation(e.getX(),e.getY());
- }
- });
- panel.addMouseMotionListener(new MouseMotionAdapter() {
- @Override
- public void mouseMoved(MouseEvent e) {
- x = e.getX();
- sX = Double.toString(x);
- textFieldX.setText(sX);
- y = e.getY();
- sY = Double.toString(y);
- textFieldY.setText(sY);
- }
- });
- button.addKeyListener(new KeyAdapter() {
- @Override
- public void keyTyped(KeyEvent e) {
- try
- {
- if (e.getKeyChar() == backSpace) {
- sss.deleteCharAt(sss.length() - 1);
- button.setText(sss.toString());
- } else {
- ch = e.getKeyChar();
- sss.append(ch);
- button.setText(sss.toString());
- }
- }
- catch(StringIndexOutOfBoundsException ee)
- {
- JOptionPane.showMessageDialog(null, "Есть проблемы");
- }
- }
- });
- button.addMouseMotionListener(new MouseMotionAdapter() {
- @Override
- public void mouseMoved(MouseEvent e) {
- x = e.getX();
- xx = button.getX();
- sXX = Double.toString(xx +x);
- textFieldX.setText(sXX);
- y = e.getY();
- yy = button.getY();
- sYY = Double.toString(yy + y);
- textFieldY.setText(sYY);
- }
- });
- button.addMouseMotionListener(new MouseMotionAdapter() {
- @Override
- public void mouseDragged(MouseEvent e) {
- if (e.isControlDown())
- {
- button.setLocation(button.getX() + e.getX(),button.getY() + e.getY());
- }
- x = e.getX();
- xx = button.getX();
- sXX = Double.toString(xx +x);
- textFieldX.setText(sXX);
- y = e.getY();
- yy = button.getY();
- sYY = Double.toString(yy + y);
- textFieldY.setText(sYY);
- }
- });
- panel.addMouseMotionListener(new MouseMotionAdapter() {
- @Override
- public void mouseDragged(MouseEvent e) {
- x = e.getX();
- xx = button.getX();
- sXX = Double.toString(xx +x);
- textFieldX.setText(sXX);
- y = e.getY();
- yy = button.getY();
- sYY = Double.toString(yy + y);
- textFieldY.setText(sYY);
- }
- });
- setContentPane(panel);
- setSize(1000,700);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement