第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我看不到 JComponent 添加到 JFrame 中?

為什么我看不到 JComponent 添加到 JFrame 中?

ABOUTYOU 2024-01-25 10:32:56
此示例將 JButton 和 JLabel 添加到 JFrame。還有一個 JComponent 應(yīng)該顯示光標的 XY 坐標。我知道有一些示例展示了如何顯示 XY 坐標,但我很想知道為什么它在這種情況下失敗。查看輸出,似乎所有必需的偵聽器都在觸發(fā),因為輸出甚至顯示 PaintCompoent() 正在以預期的輸出執(zhí)行。不確定是否需要,但我確實嘗試了 setVisible(true) 和 setBounds()。是什么阻止了具有 XY 坐標的 JComponent 出現(xiàn)。import java.awt.Color;import java.awt.FlowLayout;import java.awt.Graphics;import java.awt.event.MouseEvent;import java.awt.event.MouseMotionAdapter;import javax.swing.JButton;import javax.swing.JComponent;import javax.swing.JFrame;import javax.swing.JLabel;public class XYCoordinateTest extends JFrame {  JLabel label = new JLabel("My Test Label");  JButton b1 = new JButton("Press Me");  XYMouseLabel xy = new XYMouseLabel();  class XYMouseLabel extends JComponent  {       public int x;       public int y;       public XYMouseLabel()        {         this.setBackground(Color.BLUE);       }       // use the xy coordinates to update the mouse cursor text/label       protected void paintComponent(Graphics g)       {         super.paintComponent(g);         String s = x + ", " + y;         System.out.println("paintComponent() : " + s);         g.setColor(Color.red);         g.drawString(s, x, y);       }  }   public XYCoordinateTest ()   {    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    getContentPane().setLayout(new FlowLayout());    getContentPane().add(label);    getContentPane().add(b1);    xy.setBounds(0, 0,  300, 100);    xy.setVisible(true);    getContentPane().add(xy);    addMouseMotionListener(new MouseMotionAdapter() {        public void mouseMoved(MouseEvent me)        {         System.out.println("Panel Mouse Move x : " + me.getX() + "   Y : " + me.getY());          xy.x = me.getX();          xy.y = me.getY();          xy.repaint();        }      });    pack();    setSize(300, 100);  }  public static void main(String[] args) {    new XYCoordinateTest().setVisible(true);  }}
查看完整描述

1 回答

?
慕容森

TA貢獻1853條經(jīng)驗 獲得超18個贊

xy 分量沒有首選大小。您可以在 JFrame 上調(diào)用pack ,它將組件調(diào)整為其首選大小。由于 xy 分量沒有,因此它變得不可見。



查看完整回答
反對 回復 2024-01-25
  • 1 回答
  • 0 關(guān)注
  • 158 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號