Tag: paint

Java全屏背景颜色不会改变?

我有一些代码在java中创建一个全屏图标,并将背景颜色设置为粉红色,将前景颜色设置为红色。 然而,每次我运行它,它永远不会将背景颜色更改为红色,但只是保持透视。 我把代码放在下面。 主要java: import java.awt.*; import javax.swing.*; @SuppressWarnings({ “serial” }) public class bob extends JFrame{ public static void main(String[] args) { DisplayMode dm = new DisplayMode(800,600,16, DisplayMode.REFRESH_RATE_UNKNOWN); bob b = new bob(); b.run(dm); } public void run(DisplayMode dm){ setBackground(Color.PINK); setForeground(Color.RED); setFont(new Font(“Arial”, Font.PLAIN, 24)); screen s = new screen(); try{ s.setFullScreen(dm, this); try{ Thread.sleep(5000); […]

在AWT组件上添加透明JPanel以进行绘制

我遇到了一个问题:在我的Java应用程序中,我有一个AWT组件(无法更改那个),它会流式传输并显示一个avi文件。 现在我想借鉴这部电影,并考虑将透明的JPanel放在它上面,然后画上那部电影。 这不起作用,因为我看到avi-stream或绘制的线条,但不是两者。 我读过AWT不支持组件透明度的地方 – 但是面板是一个能够这样做的JPanel。 有人可以帮助我这个 – 请提前感谢。

在鼠标hover之前,JButton不可见

我正在为我的项目创建一个gui。 首次加载gui时,只能看到背景,因此按钮不可见,但当鼠标hover在它们上面时,它们是可见的。 解决这个问题是什么? public class Home extends JFrame{ //New JPanel private JPanel home; //Creating image url. You must be change url ImageIcon icon = new ImageIcon(“img//home1.jpeg”); //Home Class public Home(){ setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 960, 640); setTitle(“LoneyTunes Crush”); home = new JPanel(); home.setBorder(new EmptyBorder(5, 5, 5, 5)); home.setLayout(new BorderLayout(0, 0)); setContentPane(home); getContentPane().setLayout(null); JLabel background = new […]

Java:在ActionListener中使用图形组件

我有两个单独的类和驱动程序文件,在类文件中我创建了paint方法: public void paint(Graphics g){ g.drawLine(…… …. //along with all of my other draw commands } 在代码中,我创建了一个JButton,在这个按钮的动作监听器中,我不知道如何使用Graphics对象在JFrame中创建更多图形。 我应该向我的驱动程序添加一些内容以实现这一点,还是有办法在我的动作监听器中使用这些图形? 谢谢,任何帮助表示赞赏。

穿线油漆方法

我想知道如何编写以下代码,或者只是一个方法: public void run (){ public void paint(Graphics g) { g.fillRect(20, 20, 20, 20); for (int i = 20; i < 1000; i++) { g.fillRect(20, i, 20, 20); Thread.sleep(10); } } } 我发现我无法创建此代码的线程,因为我得到了一个非法的表达式错误启动,这是公平的,但我没有看到解决方法。

绘画时关于Java绘图程序的多个问题

我有一个Java绘图程序,我有两个问题要处理它。 这两个问题都相对简单,只关注如何处理鼠标输入以及图像如何使用颜色。 这是应用程序的照片: 所以这是我的第一个问题: 正如您所看到的,从应用程序的外观来看,油漆区域上有一点点喷雾。 每个点都是鼠标点击。 用户按住鼠标按钮时程序无法识别,因此您必须单独单击。 这显然适得其反,用户不友好且不可接受。 现在,我如何解决这个问题,我不确定。 我尝试过使用永久while (true)循环,但这不起作用。 我如何制作它,以便不必每次都点击,每次按住鼠标时它会喷出点? 第二个问题是点的颜色。 如您所见,在底部有颜色按钮。 这些function,但有一个问题:每当我改变颜色时,屏幕上当前的所有点都会改变颜色。 颜色由名为currentColor的变量运行,该变量由由底部面板上的所有颜色按钮控制的actionListeners运行。 如何确保已经放置在屏幕上的颜色不再受影响? 我相信可以解决这两个问题的所有代码都在于我的自定义JPanel ,它用于程序绘制。 我将在下面发布整个课程,如果您有任何其他问题,请告诉我。 int xCord, yCord; public class PaintPanel extends JPanel implements MouseListener { // default serial whatever… private static final long serialVersionUID = -6514297510194472060L; public PaintPanel() { addMouseListener(this); } ArrayList points = new ArrayList(); @Override public void […]

JLabel不会显示图像 – NullPointerException

这是我的第一个Java GUI程序,实际上只是我的第二个java程序,所以请放轻松我:)我的程序是大量谷歌搜索和阅读java文档的结果。 我的问题是我有一张52张精灵表,我试图使用subImage将这些卡分别保存到Buffered Image数组,只是为了测试目的,在窗口中显示所有52。 文件位于我确定的正确目录中。 我相信我的问题在于我使用Jlabels,或者只是一个愚蠢的错误。 无论如何,这是我的类,它执行精灵表分割 package gui; import java.awt.GridLayout; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JLabel; import javax.swing.JPanel; public class crdimgs extends JPanel {/** * */ static final long serialVersionUID = 1L; public final int width = 10; public final int height = 20; public int rows = 13; public […]

在java中制作绘图应用程序的方法更简单?

所以基本上我有一些我几天前工作的代码,有点像Paint,它允许你使用鼠标在屏幕上绘制。 我偶然发现了这个属性,我意识到这是非常低效的,我想知道是否有更实际的方法来做到这一点。 没有任何理由可以提供我的所有代码,但这里是重要的部分 private static void createAndShowGui() { SimpleDraw mainPanel = new SimpleDraw(); MenuBar.createMenuBar(); JLabel label = new JLabel(); label.setText(“Drawing prototype 0.0.1”); // label.setHorizontalTextPosition(JLabel.NORTH); label.setFont(new Font(“Serif”, Font.BOLD, 20)); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().add(mainPanel); frame.pack(); frame.setLocationByPlatform(true); frame.getContentPane().setLayout(new BoxLayout(frame.getContentPane(),BoxLayout.PAGE_AXIS)); frame.setVisible(true); frame.setJMenuBar(MenuBar.getMenuBar()); frame.setBackground(Color.WHITE); frame.add(label); 上面的代码块设置了jframe(窗口) @Override public void mouseDragged(MouseEvent e) { // These console outputs are just so that I know […]

Java 2D Game:repaint(); 使窗口变灰

我正在尝试用Java制作2D游戏,但是当我在一个线程中调用repaint()方法时,会出现一个奇怪的灰色窗口。 这是我到目前为止的源代码: Spaceshooter.java package spaceshooter; import javax.swing.*; import java.awt.*; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; public class Spaceshooter extends JFrame implements KeyListener, Runnable { private Player player = new Player(5, 186, this); private boolean up, down; public Spaceshooter(String title) { super(title); this.setFocusable(true); this.addKeyListener(this); } @Override public void paint(Graphics gr) { super.paint(gr); gr.setColor(Color.BLACK); gr.fillRect(0, 0, 800, 500); player.paintPlayer(gr); […]

java JFrame图形

我在JFrame构造函数中有以下简单代码 super(name); setBounds(0,0,1100,750); setLayout(null); setVisible(true); g = this.getGraphics(); int[] x =new int[]{65, 122, 77, 20, }; int[] y =new int[]{226, 258, 341, 310}; g.setColor(Color.RED); g.drawPolygon (x, y, x.length); System.out.println(g); 我在控制台上获得输出: sun.java2d.SunGraphics2D [字体= java.awt.Font中[家族=对话框,名称=对话框,风格=平原,大小= 12],颜色= java.awt.Color中[R = 255,G = 0,B = 0 ]] 但是在JFrame上没有绘制红色多边形,只有空白JFrame。 为什么?