相关疑难解决方法(0)

在 Mac OS X 中获取 AWT 框架的可绘制区域?

我已经子类化java.awt.Frame并覆盖了该paint()方法,因为我希望手动绘制窗口的全部内容。

但是,在图形对象上,(0,0) 对应于标题栏装饰窗口的左上角,而不是第一个可绘制像素。

我能否以跨平台的方式确定第一个可绘制像素的坐标(即装饰的高度),避免使用 Mac OS X 特定的软糖因子?我是否会被迫嵌套Panel组件以找到窗口的实际可绘制区域?

在这里,我的代码无法在窗口的可绘制区域内将蓝色方块居中:

@Override
public void paint (Graphics g) {
    g.setColor(Color.BLUE);
    g.setPaintMode();
    g.fillRect(30, 30, getWidth()-60, getHeight()-60);
}
Run Code Online (Sandbox Code Playgroud)

java macos graphics awt paint

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

标签 统计

awt ×1

graphics ×1

java ×1

macos ×1

paint ×1