我正在看Randel Schofer的屏幕录像机,我喜欢GUI。我试图在不查看源代码的情况下自己设计一个。我知道这是一个简单的出路,但我想自己弄清楚这些事情
我遇到了很多问题:
GradientPaint
可以做到这一点。我用它来填充矩形和圆圈,但我怎样才能将它用于JFrame
? JFrame
内
run()
方法?
public class ScreenRecorder extends JFrame{
protected class background extends JPanel{
@Override
public void paintComponent(Graphics g){
}
}
}
我仍然可以得到背景。请帮忙。
答案 0 :(得分:3)
覆盖JFrame内部JPanel的paintComponent,并以与绘制Shape相同的方式绘制渐变。
您必须在Photoshop / GIMP中创建该图像,然后将其添加到JLabel或JButton(取决于交互性)。
是的 - 它在技术上仍然在JFrame中(在JFrame中的JLabel / JButton上设置)。它只是因为JFrame太小而在外面绘制。
计时器可以这样实现:
ActionListener listener = new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
// Update the display with the time.
}
};
timer = new Timer(speed, listener);
timer.setInitialDelay(pause);
timer.start();