小编Mic*_*son的帖子

在退出事件上飞镖

有没有办法在VM上运行的Dart应用程序退出之前执行某些操作?

我正在编写一个服务器应用程序,因此没有特定的时间点我的应用程序将退出.我正在尝试与另一个进程交谈,但如果用户关闭我的应用程序(使用ctr + c),或者由于某些未知原因而崩溃,我希望能够告诉该进程也关闭.

如果存在与此类似的东西,那将是很好的:

void main() {
  onExit().then(() {
    process.kill();
  });
}
Run Code Online (Sandbox Code Playgroud)

谢谢.

编辑:

我想出了如何检测Ctr+C:

void main() {
  ProcessSignal.SIGINT.watch().listen((ProcessSignal signal) {
    print("exiting");
    exit(0);
  });
}
Run Code Online (Sandbox Code Playgroud)

现在,如果应用程序是从Dart编辑器运行的,有没有办法检测到关闭?

events exit dart

8
推荐指数
1
解决办法
440
查看次数

如何绘制透明背景?

我试图让一个JPanel透明,但我不能让它工作.是否有可能做到这一点?

import java.awt.*;
import javax.swing.*;

public class ClearPanel extends JPanel{
public static void main(String[] args) {
    ClearPanel c = new ClearPanel();
    c.setPreferredSize(new Dimension(200, 200));
    c.setOpaque(false);

    JPanel backPanel = new JPanel();
    backPanel.setBackground(Color.CYAN);

    backPanel.add(c);

    JFrame f = new JFrame();
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.setContentPane(backPanel);
    f.pack();
    f.setLocationRelativeTo(null);
    f.setVisible(true);
}

@Override
protected void paintComponent(Graphics g) {
    super.paintComponent(g);
    g.fillOval(0, 0, 200, 200);
    g.clearRect(45, 45, 50, 50);

    Graphics2D g2 = (Graphics2D) g;
    g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.0f));
    g2.fillRect(75, 75, 50, 50);
}
}
Run Code Online (Sandbox Code Playgroud)

椭圆形应该是不透明的,但矩形我想要透明.透明,我的意思是我应该能够看到ClearPanel背后的面板.

关于MadProgrammer的回答,有没有办法让灰色的盒子在区域之外的地方绘制,但是在该区域内保持透明?

    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g); …
Run Code Online (Sandbox Code Playgroud)

java swing transparency jpanel graphics2d

1
推荐指数
1
解决办法
2392
查看次数

如何用Java创建一个桶填充?

我正在尝试创建类似程序的绘画,我正在实现一个桶填充工具.我正在存储已绘制的所有点并使用Graphics2D drawLine绘制实际线,因此我不想存储桶填充的所有点(因此我不想进行填充).

对于桶填充,到目前为止,我已经使用a BufferedImage来填充不在我的列表中但仍在绘制的点.

我想做的一件事就是只存储最外面的点,而不是fillPolygon使用这些点来使用Graphics2D .唯一的问题是我不确定如何找到这些点.

我被困在这里,所以有人有任何想法吗?

java paint fill bucket graphics2d

0
推荐指数
1
解决办法
4802
查看次数

标签 统计

graphics2d ×2

java ×2

bucket ×1

dart ×1

events ×1

exit ×1

fill ×1

jpanel ×1

paint ×1

swing ×1

transparency ×1