我正在尝试使用JButton作为JComboBox中的编辑器。在MacOSX上这看起来不错,但在使用系统外观的Windows上,JButton编辑器和组合按钮本身之间存在一个难看的差距:这是用于生成对话框的测试代码:importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassButtonEditorTestimplementsRunnable{String[]items={"One","Two","Three"};ComboBoxModelmodel;ButtonEditorTest(){//ourmod
我有两个带有文本“Ok”和“Cancel”的JButton。我正在使用GridBagLayout在JDialog中对齐它们。我已将anchor设置为GridBagConstraints.CENTER。由于文本“Ok”和“Cancel”中的字符数不同,按钮的大小也不同。我如何正确对齐它们,以便它们中的每一个都具有相同的大小。我尝试了以下但无济于事。okayButton.setSize(cancelButton.getSize()); 最佳答案 尝试将填充设置为GridBagConstraints.BOTH并为两个按钮赋予相同的权重。
在定义JButton上的简单单击行为时,哪种方法是正确的?而且,有什么区别?JButtonbut=newJButton();but.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){System.out.println("Youclickedthebutton,usinganActionListener");}});或JButtonbut=newJButton();but.addMouseListener(newjava.awt.event.MouseAdapter(){publi
在大多数系统上,我的JLabel中的内容都能正常显示。它也以一种方式驻留,它应该总是足够大以显示其内容文本,因为我基本上是这样做的:label.setText(text);label.setFont(newFont(fontName,0,12));intwidth=label.getFontMetrics(label.getFont()).stringWidth(text);intheight=21;//thisshouldalwaysbeenoughlabel.setBounds(newRectangle(x,y,width,height));但是在某些系统上(不是我自己的,所以我真
我想在我的JButton上保留默认边框,但也在它们周围放置空白区域。我正在使用垂直BoxLayout。我最初对边框只字未提,得到了我想要的单像素LineBorder,但按钮都相互靠在一起。然后我尝试了button[i].setBorder(BorderFactory.createEmptyBorder(5,5,5,5))。它没有在按钮周围添加空白,而是扩大了按钮的区域。它还删除了LineBorder。然后我尝试了:button[i].setBorder(BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(
我想在swing中创建一个“浏览”按钮,当用户“浏览”浏览按钮时,他应该能够从他的硬盘文件夹中选择一个位置来保存文件。这是我界面设计的一部分。我该怎么做?我希望路径显示在浏览按钮一侧的文本框中。 最佳答案 您应该看看Sun的JFileChooser教程应用程序接口(interface)。这将为您提供完成您想要做的事情所需的几乎所有内容。 关于java-javaswing中的jbutton(浏览pc文件夹),我们在StackOverflow上找到一个类似的问题:
基本上我计划在JFrame上放置一些按钮、文本字段、标签等,我希望用户可以使用鼠标在JFrame上移动不同的组件。我见过各种使用MouseListeners、子类JComponent代码、DropSource/DropTarget实现等的方式,但我不确定哪种方式是“推荐”方式(我不需要支持不同方式之间的“拖放”框架/应用程序,这似乎是大多数示例所做的)。 最佳答案 ComponentMover可以为您做这件事。 关于java-是否可以在JFrame中包含"movable"/"dragga
我能够使JFrame完全透明,而JButton部分透明,直到我将鼠标移到按钮上(不要单击)并将鼠标从按钮上移开(通过MouseListener调用MouseExited)。发生的情况是再次绘制JButton的背景,因此在按钮上和按钮上移动几次鼠标后,按钮完全不透明。publicclassButtonExampleextendsJWindow{publicButtonExample(){JButtonBut=newJButton("Testing");But.setBackground(newColor(0,0,0,200));But.setForeground(newColor(70,
我想为我自定义的Swing.JButton添加一个悬停效果,类似于我的Chrome浏览器上的图标:悬停前>>悬停后>>我可以在创建按钮时将其设置为“之前”状态,但是当它悬停时我无法创建“边框+凸起背景”。当我尝试将边框重新添加到按钮时,我得到了一个移动效果,就像在重新绘制后插入了一个新边框一样。这是我当前的代码:publicclassMyButtonextendsJButtonimplementsMouseListener{publicMyButton(StringiconPath,StringtoolTip){super(newImageIcon(TipButton.class.ge
我最近阅读了这个线程(CreatingacustombuttoninJava)关于通过扩展JButton类在java中创建自定义按钮,但是这个线程中的所有解决方案都使用在java中绘制的图形。我想让我的按钮基于我在Photoshop中绘制的按钮图像。所以我尝试将我在该线程中阅读的内容应用到这个结果中:importjavax.swing.*;importjava.awt.*;publicclassnextButtonextendsJButton{@OverrideprotectedvoidpaintComponent(Graphicsg){Imageimage=newImageIcon(