如何在Java中控制帧外的单个像素?

时间:2013-12-05 18:35:36

标签: java swing graphics

我需要一种方法来控制监视器上不在帧内的单个像素。有什么办法可以直接将某个x,y的像素更改为某种颜色吗?

1 个答案:

答案 0 :(得分:3)

尝试使用Java的“全屏独占模式”API:

http://docs.oracle.com/javase/tutorial/extra/fullscreen/exclusivemode.html

在这个例子中:

http://docs.oracle.com/javase/tutorial/displayCode.html?code=http://docs.oracle.com/javase/tutorial/extra/fullscreen/examples/CapabilitiesTest.java

您看到Java应用程序从图形设备获取“ContentPane”容器,然后它创建一个JPanel并将其添加到内容窗格。完成后,您可以使用以下内容覆盖JPanel的paintComponent:

 @Override
 public void paintComponent(Graphics g) {
     super.paintComponent(g);
     g.drawRect(50, 50, 50, 50);
 }

您当然可以将绘制的任何颜色设置为任何颜色,也可以绘制除矩形之外的其他内容。

缺点是,如果您只想绘制该像素并保留屏幕的其余部分,则不会获得透明度。此StackOverflow问题进一步调查此问题:java fullscreen window with transparency