Tag: jlabel

Java JLabel / JButton:在某些系统上,我得到“……”(省略号),而在某些系统上,我没有。 如何强制禁用省略号?

在大多数系统上,我的JLabel中的内容显示正常。 它的存在方式应该始终足以显示其内容文本,因为我基本上这样做: label.setText(text); label.setFont(new Font(fontName, 0, 12)); int width = label.getFontMetrics(label.getFont()).stringWidth(text); int height = 21; // this should always be enough label.setBounds(new Rectangle(x, y, width, height)); 但是在某些系统上(不是我自己的,所以我不能那么简单地调试它),它会剪切文本并在最后显示“……”。 你可以在这里看到完整的代码,你可以在这里看到这个例子(Abbildungen_Bijektiv_X3) 。 我也有一些类似的JButton案例。 我怎么能强迫Swing不这样做? (即使它认为组件太小。) Swing究竟在哪里处理这个? 我浏览了JButton的代码和一些相关的类,但我没有真正找到它切割文本的代码并添加了省略号。

JLabel显示倒计时,java

我在一个类(名为Welcome)中有一个“status”JLabel,在另一个类中有一个定时器(名为Timer)。 现在,第一个显示“状态”一词,第二个显示倒计时。 我希望它的方式,但不知道如何 – 显示10,9,8,7 … 0(然后转到下一个窗口)。 我到目前为止的尝试: // class Welcome setLayout(new BorderLayout()); JPanel area = new JPanel(); JLabel status = new JLabel(“status”); area.setBackground(Color.darkGray); Font font2 = new Font(“SansSerif”, Font.BOLD, 25); status.setFont(font2); status.setForeground(Color.green); area.add(status, BorderLayout.EAST); // can I put it in the bottom-right corner? this.add(area); 和计时器: public class Timer implements Runnable { // public void […]

Java:JPanel中的垂直对齐

我试图在一个JPanel中垂直对齐(居中)两个JLabel。 JPanel panel = new JPanel(); panel.setPreferredSize(size); JLabel label1 = new JLabel(icon); JLabel label2 = new JLabel(“text”); panel.add(label1); panel.add(label2); 我尝试过使用setAligmentY()但没有成功。 两个标签始终显示在JPanel的顶部。 UPD:标签应该像使用FlowLayout一样位于彼此旁边,但是在JPanel的中间。

找出JLabel的文本是否超过标签大小

在Java中,当由于空间不足而无法显示JLabel的文本时,文本被截断并且最后添加“…”。 如何轻松找出当前JLabel是显示全文还是截断? 编辑: 我看到有一种方法可以通过使用FontMetrics找出文本的大小。 然而,该解决方案并未完全回答这个问题。 在JLabel文本包含HTML装饰的情况下, metrics.stringWidth()也会计算HTML标记的宽度。 因此,可能会发生metrics.stringWidth()结果比JLabel的宽度更大,但文本仍然会正确显示。 有没有办法知道在显示文本时JLabel本身做出了什么决定。 它是否决定截断文本。

半透明的JLabel没有正确显示背景

我有以下几行: label.setBackground(new java.awt.Color(0, 150, 0, 50)); 我把它放在MouseAdapter中的mouseReleased方法中。 基本上,当我点击它时,我想让标签突出显示为半透明的绿色。 我在面板中有几个标签,都添加了这个MouseAdapter。 我的问题是: – 当我点击标签时,它显示半透明的绿色,但它显示的是另一个JLabel的背景,而不是我点击的那个。 无论我点击哪个标签,它总是描绘相同标签的背景。 – 无论何时我点击一个标签,它都会重复相同的背景。 – 奇怪的是,每次点击JLabel时,绿色的不透明度似乎都会增加,就好像每次点击一个新的JLabel时,它都会将半透明的绿色涂在自身上。 关于发生了什么的任何提示? 我应该尝试在此发布SSCCE吗? 或者是否有一个我想念的简单答案。 我之前没有发布SSCCE的原因是我的代码很大并且分布在多个文件中,所以我必须首先修改它。

将JLabel置于JLabel之上,其中包含图像

我很确定之前已经问过这个问题,但是我的情况略有不同,因为我试图将JLabel置于JLabel作为背景的顶部,我想使用JLabel显示更改的数字并且需要数字显示在背景上,但是我有点摇摆n00b,在此先感谢Jonathan

如何将JLabel放入JLabel或将JLabel划分为正方形

我已经创建了一个蛇和梯子游戏,它运行良好,但现在我想添加一点修改它。 我希望每个球员都有两个球员而不是一个球员。 现在新的规则变成了,同一个玩家的两个部分可以占据同一个方格,因此我需要一种方法来在同一个方格中显示它们。 我使用JLable来识别每个方块,但现在我希望每个方块都能容纳多个方块。 也就是说,如果一个正方形被多个部分占用,则用户必须能够点击一个部分并仅选择该部分。 有没有办法将square / JLable分成几个正方形/ JLabel? 我不确定JLabel是否最好在这里使用…有什么建议吗???

如何为JLabel创建事件处理程序?

我想这样做,如果我点击JLabel,标签就会变成一个新标签,并附加另一个图像。 到目前为止我的代码看起来像: public class Picture extends JFrame { private ImageIcon _image1; private ImageIcon _image2; private JLabel _mainLabel; private JLabel _mainLabel2; public Picture(){ _image1 = new ImageIcon(“src/classes/picture1.jpg”); _image2 = new ImageIcon(“src/classes/picture2.jpg”); _mainLabel = new JLabel(_image1); _mainLabel2 = new JLabel(_image2); add(_mainLabel); pack(); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } }

Java:JLabels中的换行符?

我正在尝试使用多行文本制作Swing JLabel。 它添加得很好,但换行没有通过。 我该怎么做呢? 或者,我可以只为JLabel指定一个最大宽度,并知道文本会换行,就像在div中一样吗? private void addLegend() { JPanel comparisonPanel = getComparisonPanel(); //this all displays on one line JLabel legend = new JLabel(“MMM FFF MMM FFFO O OOM M MMMM.\nMMM FFF MMM FFFO O OOM M MMMM.\nMMM FFF MMM FFFO O OOM M MMMM.\n”); comparisonPanel.add(legend); }

使用JLabels更新图像的正确方法

我正在创建一个GUI,并且是一个相当新的摇摆和awt。 我正在尝试创建一个gui,在启动时,将背景设置为图像,然后使用方法创建各种幻灯片。 我已经尝试过,而且我没有附加到代码中,所以我能够同时修改和/或全新的概念。 编辑(2013年9月15日):我在播放幻灯片时遇到问题,似乎无法让它发挥作用。 这是我目前的代码。 public class MainFrame extends JFrame{ JLabel backgroundL = null; private JLabel bakckgroundL; BufferedImage backimg; Boolean busy; double width; double height; public MainFrame() throws IOException { initMainframe(); } public void initMainframe() throws IOException { //misc setup code, loads a default jpg as background setTitle(“Pemin’s Aura”); busy = true; String backgroundDir = […]