Tag: awt

如何制作AWT Button()并使用ImageIcon(),Icon()?

如何将GIF图像应用于AWT Button ? AWT :不起作用 Icon warnIcon = new ImageIcon(“/src/world.gif”); Button button1 = new Button(warnIcon); Icon warnIcon = new ImageIcon(“/src/world.gif”); JButton button1 = new JButton(warnIcon);

如何使用KeyListener

我正在尝试在我的程序中实现一个keylistener,以便当我按下箭头键时它会执行一个动作,我的程序中的对象向左或向右移动。 这是我程序中的移动方法 public void moveDirection(KeyEvent e) { int move = 0; int r = K.getRow(); int c = K.getCol(); if (e.getKeyCode() == 39) move = 1; //KeyEvent.VK_RIGHT if (e.getKeyCode() == 37) move = 2; //KeyEvent.VK_LEFT //if (e.getKeyCode() == KeyEvent.VK_DOWN) move = 3; switch (move) { case 1: if (inBound(r, c+1)) K.setLocation(r ,c+1); if (inBound(r, c-1) […]

如何从java中的目录拖放文件

我想实现从某个硬盘驱动器等目录中拖放文件,但无法弄清楚如何操作。 我已经阅读了java api,但它谈到了颜色选择器和列表之间的拖放,但是如何从计算机文件系统中拖动文件并放入我的应用程序。 我尝试编写transferhandler类和鼠标事件,以便在拖动开始时但似乎没有任何效果。 现在我回到刚刚设置了我的JFileChooser所以拖动已经启用但是如何放下? 正确方向的任何信息或点非常感谢。 import javax.swing.*; import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import javax.swing.BorderFactory; import javax.swing.DefaultListModel; import javax.swing.JButton; import javax.swing.JComponent; import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.SwingUtilities; import javax.swing.filechooser.FileFilter; public class FileChooserDemo extends JPanel implements ActionListener { JLabel selectedFileLabel; JList selectedFilesList; JLabel […]

Java:mouseDragged并在图形界面中移动

新手程序员在这里。 我正在制作一个程序,用于在笛卡尔坐标系中呈现用户输入的方程。 目前我遇到一些让用户在坐标中自由移动视图的问题。 目前使用mouseDragged,用户可以稍微拖动视图,但是一旦用户释放鼠标并尝试再次移动视图,原点就会快速回到鼠标光标的当前位置。 让用户自由移动的最佳方法是什么? 提前致谢! 这是绘图区域的代码。 import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Point; import java.awt.Rectangle; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.awt.geom.Line2D; import java.awt.geom.Point2D; import javax.swing.JPanel; public class DrawingArea extends JPanel implements MouseMotionListener { private final int x_panel = 350; // width of the panel private final int y_panel = 400; // […]

KeyListener与键绑定

这里的人们一直建议我在Java 2D游戏中使用Key Binding而不是KeyListener 。 每个人的优点和缺点是什么? 2D游戏的关键绑定真的更好吗?

调用mouseClicked()后JComponents消失

我正在用Swing编写Java GUI程序。 界面如下所示: 当用户点击右侧的其中一张图片时,我希望它的小预览显示在左上角的橙色区域中。 我通过SwingWorker线程从计算机上的目录中提取所有图像文件。 在SwingWorker的done()方法中 ,我向每个对象添加一个mouseClicked侦听器(来自我创建的类的TaggableImage对象。它具有BufferedImage并扩展JComponent,覆盖paintComponent()方法)。 在mouseClicked监听器中,我调用橙色面板的add()方法并将其传递给TaggableImage。 我的问题: 当我点击其中一个图像时,它不会被添加到橙色面板,它会从右侧的面板中消失。 如果我单击所有图像,我将留下一个空白的右侧面板。 为什么会这样? 这是我的整个SwingWorker线程: SwingWorker<ArrayList, Void> loadImagesAsyncWorker = new SwingWorker<ArrayList, Void>() { ArrayList img_list = new ArrayList(); @Override protected ArrayList doInBackground() throws Exception { File currentDirectory = new File(“.”); getFileInDirectory(currentDirectory); return null; } // recursively get all files in this directory and child directories private void […]

移植使用AWT和Swing的Java应用程序将电影绘制到服务器端

我正在使用一些代码,使用AWT和Swingfunction将动画输出写入桌面。 它使用2D图形绘制并以字体呈现文本。 此代码可以使用Java Media Framework将动画保存到电影文件。 我想将此代码移植到纯服务器端环境,以便使用Web UI。 绘图代码可以在servlet容器内运行,也可以作为命令行程序在外部运行。 (或者我可以选择不使用servlet容器,而是使用从命令行运行Java Web服务器的新方法。) 我可以在不启动服务器上的X Window系统的情况下使用AWT和Swing绘图function吗?

java拖放

我试着熟悉java中的拖放,但我找到的所有教程都是……(让我生气) 我想要的是从JList(包含在名为“UserPanel”的自制JPanel中)拖动“PublicUserLabel”并将其放入从JTabbedPanel无效的自制类中。 拖动对象本身而不是它的字符串表示非常重要! 这就是我到目前为止:PublicUserLabel public class PublicUserLabel extends JLabel implements DragSourceListener, DragGestureListener, Transferable { private DragSource ds; private PublicUser user; public PublicUserLabel(PublicUser user) { super(user.getName()); this.user = user; ds = new DragSource(); ds.createDefaultDragGestureRecognizer(this, DnDConstants.ACTION_COPY_OR_MOVE, this); } @Override public void dragGestureRecognized(DragGestureEvent e) { ds.startDrag(e, DragSource.DefaultCopyDrop, this, this); } @Override public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException, IOException […]

什么是java.awt.Component.getName()和setName()用于?

什么是java.awt.Component.getName()用于? 在我使用NetBeans构建的应用程序中,它似乎总是为null 。 我正在考虑在其中存储每个组件的一些帮助文本 – 我不想使用工具提示,我有另一个面板,我将显示帮助文本。

Java Animate JLabel

所以我创建了一个基本的应用程序,我希望在屏幕底部有一个JLabel,从左下角开始,动画样式,在设定的时间内移动到右下角,在中心移动静态图像。 为此,我使用BorderLayout创建了一个带JPanel的JFrame。 有一个JLabel,其中ImageIcon添加到BorderLayout.CENTER,而一个JPanel添加到BorderLayout.SOUTH。 我的代码虽然草率而且非常漂亮,但是: import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.Timer; import javax.swing.BorderFactory; public class GameWindow extends JPanel{ private static JLabel mainWindow, arrowLabel, arrowBox; protected static JFrame frame; protected static JPanel arrows; public static int x = 600; public GameWindow(){ mainWindow = new JLabel(“Center”); […]