小编Mas*_*ter的帖子

如何从Java中显示的字符串末尾删除空格?

我的类GraphicButton.java创建了一个JButton带有特定文本和字体以及矩形边框的自定义.我的问题是在字符串的最后一个字符和我想要删除的边框的末尾之间有一些额外的空间.

这是一个GraphicButton类似于字符串"PLAY"和字体FFF Forward (直接下载链接)添加到a 的实例JFrame.红线是我想要移除的空间.

这是我正在使用的代码(JFrame省略了创建和设置):

GraphicButton.java:

public class GraphicButton extends JButton {

   private static final long serialVersionUID = 1L;

   //Fields
   private String text;
   private Font font;

   //Constructor
   public GraphicButton(String text, Font font) {
       super(text);

       this.text = text;
       this.font = font;
       //Setting preferred size here.
       this.setPreferredSize(new Dimension(this.getFontMetrics(font).stringWidth(text), this.getFontMetrics(font).getAscent()));
   }

   @Override
   public void paintComponent(Graphics g) {
       g.setFont(this.font);

       //Draw text
       g.drawString(this.text, 0, this.getHeight());
       //Draw border
       g.drawRect(0, …
Run Code Online (Sandbox Code Playgroud)

java graphics swing

5
推荐指数
1
解决办法
153
查看次数

将两个大整数值相乘会产生错误的结果

此方法用于获取(通过用户输入)给定数据集中的两个最大整数并计算它们的乘积。它适用于每个输入,直到我尝试了两个整数的数组10000090000返回410065408.

这是我的 Java 方法:

static int getMaxPairwiseProduct(int[] numbers) {
    int max=0,lessermax=0;
    int n = numbers.length;

    for (int j = 0; j < n; ++j) {
        //if(j==k)continue;
        if(numbers[j]>0 && numbers[j]>=max) {               
            lessermax=max;max=numbers[j];
            System.out.println(j);//k=j;
        } else if(numbers[j]>lessermax) {      
            lessermax=numbers[j];
            System.out.println(j);}
        }
    //result=;
    return max*lessermax;
}
Run Code Online (Sandbox Code Playgroud)

这是我的main方法:

public static void main(String[] args) {
    //FastScanner scanner = new FastScanner(System.in);
    Scanner scanner=new Scanner(System.in);
    int n = scanner.nextInt();
    int[] numbers = new int[n];
    for (int i = 0; …
Run Code Online (Sandbox Code Playgroud)

java

0
推荐指数
1
解决办法
1220
查看次数

如何通过单击 Java 中的第二个 JButton 来更改一个 JButton 的文本

JButton当我单击第二个时,我想更改其中一个的文本JButton,但它什么也没做。我不知道问题是什么。如果有人能尽快帮助我,那么我将非常感激并感谢一切努力。

public class myJPanel6 extends JPanel implements ActionListener
{  

myJButton b1, b2;
student st1;
String s1;

public myJPanel6()
{

    setLayout(new GridLayout(1,1));

    student st1 = new student("Michael", "Robinson", 20);

    b1 = new myJButton(st1.getName());
    b1.addActionListener(this);
    add(b1);

    b2 = new myJButton(st1.WhatIsUp());
            b2.addActionListener(this);
    add(b2);
}

@Override
public void actionPerformed(ActionEvent e) {

   if(e.getSource() == b1)
   {
       s1=st1.WhatIsUp();
       b2.setText(s1);
   }
}
Run Code Online (Sandbox Code Playgroud)

java swing jbutton

-2
推荐指数
1
解决办法
1436
查看次数

标签 统计

java ×3

swing ×2

graphics ×1

jbutton ×1