Tag: swing

使用下拉列表在Java中创建自动完成文本框

我想创建一个自动建议文本框,它将在每个密钥释放事件中查询数据库。 那部分很简单,但我想给它一个很好的视觉效果。 类似于我们在Facebook搜索等网站中看到的自动建议文本框。 如何制作这样的界面? 一个天真的想法是将JList放在文本框的正下方,并将其设置为可见,并在其中找到一个结果。 这样做有更好的想法或标准方法吗?

如何在JPanel中设置背景图片

你好我使用JPanel作为我的框架的容器然后我真的想在我的面板中使用背景图片我真的需要帮助这是我的代码到目前为止。 这是更新,请在这里查看我的代码 import java.awt.*; import javax.swing.*; import java.awt.event.*; public class imagebut extends JFrame { public static void main(String args []) { imagebut w = new imagebut(); w.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); w.setSize(300,300); w.setVisible(true); } public imagebut() { setLayout(null); // 🙂 PicPanel mainPanel = new PicPanel(“picturename.jpg”); mainPanel.setBounds(0,0,500,500); add(mainPanel); } class PicPanel extends JPanel{ private BufferedImage image; private int w,h; public […]

显示图像数据的直方图

我有时需要以直方图的forms显示图像数据的表示。 我对访问图像数据的方式特别感兴趣。 我熟悉JFreeChart ,其中包括直方图支持,但我会考虑其他方法。

用Java旋转数据和文本的坐标平面

我需要: 1.)移动原点并旋转坐标平面,使x值向右前进,y值从新原点向上进行(需要在下面的代码中为内部蓝色矩形的左下角)。 这将使我能够在下面的代码中绘制x,y坐标对的点。 2.)绘制数据图的y轴上的抽动标记的旋转标签。 下面的代码设置了这个问题。 它有效,除了两个问题: 1.)绘制数据点,左上角为原点,y值向下下降 2.)屏幕上没有绘制y轴上的标记标记 任何人都可以告诉我如何修复下面的代码,以便它修复这两个问题,并做上面第一段描述的内容? 代码在以下两个java文件中: DataGUI.java import java.awt.*; import java.util.ArrayList; import javax.swing.*; class DataGUI extends JFrame{ DataGUI() { super(“X,Y Plot”); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setPreferredSize(new Dimension(800, 400)); this.pack(); this.setSize(new Dimension(800, 600)); this.setLocationRelativeTo(null); setLayout(new GridLayout()); ArrayList myDiffs = new ArrayList(); myDiffs.add(25.0); myDiffs.add(9.0); myDiffs.add(7.0); myDiffs.add(16.0); myDiffs.add(15.0); myDiffs.add(6.0); myDiffs.add(2.0); myDiffs.add(8.0); myDiffs.add(2.0); myDiffs.add(27.0); myDiffs.add(14.0); myDiffs.add(12.0); myDiffs.add(19.0); myDiffs.add(10.0); […]

启用nimbus时,JDK7中无法透明且未修饰的JFrame

看这张图片 : 这是透明框架的代码: GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice gd = ge.getDefaultScreenDevice(); if (!gd.isWindowTranslucencySupported(TRANSLUCENT)) { System.err.println( “Translucency is not supported”); System.exit(0); } JFrame.setDefaultLookAndFeelDecorated(true); 这很好但是在尝试通过添加启用LookAndFeel时 try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { if (“Nimbus”.equals(info.getName())) { javax.swing.UIManager.setLookAndFeel(info.getClassName()); break; } } }catch(…….) 它给了我这个错误 线程“AWT-EventQueue-0”中的exceptionjava.awt.IllegalComponentStateException:框架被修饰 这个错误是什么? 以及如何解决? 感谢您的回答和建议。 编辑 提问/ CrossPosted OTN Daniweb CodeRanch

拖动屏幕周围的jlabel

所以我试图在JFrame周围单击并拖动JLabel。 以下代码允许在屏幕上的任何位置按下/拖动鼠标时在屏幕上移动JLabel,但我不知道如何添加第二个ActionListener以检查鼠标是否在标签上单击,假设是解决方案。 我想在屏幕上有多个JLabel,以便移动的唯一标签是鼠标单击并正在拖动的标签。 谢谢。 import java.awt.*; import java.awt.event.*; import javax.swing.*; @SuppressWarnings(“serial”) public class test extends JFrame implements MouseMotionListener { private JPanel panel = new JPanel(null); private JLabel dragLabel = new JLabel(“drag test”); private int mouseX = 200; private int mouseY = 200; public test() { this.add(panel); panel.setBackground(Color.WHITE); panel.add(dragLabel); dragLabel.setForeground(Color.RED); dragLabel.setBounds(mouseX, mouseY, 100, 50); panel.addMouseMotionListener(this); } […]

如何只允许在jTextField中引入数字?

我试图使用此处显示的示例,但java显示错误消息 “AttributeSet无法解析为类型” 这就是为什么我试图使用另一种只允许数字的方法: txtUsername.addKeyListener(new MyKeyListener()); public class MyKeyListener extends KeyAdapter{ public void keyPressed(KeyEvent ke){ System.out.println(“Key pressed code = “+ke.getKeyCode()); if (ke.getKeyCode()>=48 && ke.getKeyCode()<=57) return true; else return false; } } 但是当然它没有用,因为keyPressed方法是void 。 那么,为了在textfield中只打印数字怎么办?

在java中旋转图像

我想要旋转图像。 我有一个包含JLabel的JInternalFrame 。 标签包含图像。 旋转图像后,我需要调整内部框架的大小。 我目前的代码旋转图像,但图像边缘周围有黑色,并且偏离中心。 对于如何解决这个问题,有任何的建议吗? public void rotateIcon(int angle) { int w = theLabel.getIcon().getIconWidth(); int h = theLabel.getIcon().getIconHeight(); int type = BufferedImage.TYPE_INT_RGB; // other options, see api BufferedImage DaImage = new BufferedImage(h, w, type); Graphics2D g2 = DaImage.createGraphics(); double x = (h – w)/2.0; double y = (w – h)/2.0; AffineTransform at = […]

CombinedDomainXYPlot不重新缩放域轴

当我从使用CombinedDomainXYPlot的图表中隐藏系列数时,所有范围轴都会很好地自动重新调整。 但是,域轴没有重新调整。 有没有办法手动刷新缩放,或者可能有一个我缺少的设置,以便在此设置中启用域轴的自动缩放?

Swing – 更新标签

我有一个消息标签和一个提交按钮。 将多次按下提交按钮,每次按下的操作最多可能需要一分钟。 按下按钮时,我想将消息设置为空,在任务完成后,我想将消息设置为“完成”。 private void submitActionPerformed(java.awt.event.ActionEvent evt) { message = “”; updateMessageLabel(); doTheTask(); /* this update is apply to the label after completion */ message = “Complete”; } 是否可以在运行submitActionPerformed()方法之前(或在方法中)更新该消息标签,但是在单击该按钮之后?