MessagePanel. Java output message function

From , 5 Years ago, written in Java, viewed 197 times.
URL https://pastebin.vip/view/c4015b7f
  1. import java.awt.*;
  2. import javax.swing.*;
  3. public class MessagePanel extends JPanel{
  4.         private String message = "欢迎使用";
  5.         private int xCoordinate = 20;
  6.         private int yCoordinate = 20;
  7.         private boolean centered;
  8.         private int interval = 10;
  9.         public MessagePanel(){
  10.         }
  11.        
  12.         public MessagePanel(String message){
  13.                 this.message = message;
  14.         }
  15.         public String  getMessage(){
  16.                 return message;
  17.        
  18.         }
  19.         public void setMessage(String message){
  20.                 this.message = message;
  21.                 repaint();
  22.         }
  23.         public int getxCoordinate(){
  24.                 return xCoordinate;
  25.         }
  26.         public void setXCoordinate(int x){
  27.                 this.xCoordinate = x;
  28.                 repaint();
  29.         }
  30.         public int getyCoordinate(){
  31.                 return yCoordinate;
  32.         }
  33.         public void setyCoordinate(int y){
  34.                 this.yCoordinate = y;
  35.                 repaint();
  36.         }
  37.         public boolean isCentered(){
  38.                 return centered;
  39.         }
  40.         public void setCentered(boolean centered){
  41.                 this.centered = centered;
  42.                 repaint();
  43.         }
  44.         public int getInterval(){
  45.                 return interval;
  46.         }
  47.        
  48.         public void setInterval(int interval){
  49.                 this.interval = interval;
  50.                 repaint();
  51.         }
  52.         protected void paintComponent(Graphics g){
  53.                 super.paintComponent(g);
  54.                
  55.                 if(centered){
  56.                         FontMetrics fm =g.getFontMetrics();
  57.                         int stringWidth=fm.stringWidth(message);
  58.                         int stringAscent = fm.getAscent();
  59.                         xCoordinate = getWidth()/2-stringWidth/2;
  60.                         yCoordinate = getHeight()/2+stringAscent/2;
  61.                 }
  62.                 g.drawString(message, xCoordinate, yCoordinate);
  63.         }
  64.         public void moveLeft(){
  65.                 xCoordinate-=interval;
  66.                 repaint();
  67.         }
  68.         public void moveRight(){
  69.                 xCoordinate+=interval;
  70.                 repaint();
  71.         }
  72.         public void moveUp(){
  73.                 yCoordinate-=interval;
  74.                 repaint();
  75.         }
  76.         public void moveDown(){
  77.                 yCoordinate+=interval;
  78.                 repaint();
  79.         }
  80.                        
  81.  
  82.         public Dimension getPreferredSize(){
  83.                 return new Dimension(200,30);
  84.         }
  85.  
  86. }
  87.  

Reply to "MessagePanel. Java output message function"

Here you can reply to the paste above

captcha

https://burned.cc - Burn After Reading Website