有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

通过drawline方法创建的java线条在调整窗体大小时消失

我有一张桌子。我要在上面画一个图表。但我意识到,当调整帧的大小时,通过绘制线的方法装箱的线消失了

这是我的密码。我想知道如何避免在调整大小时消失。我想保持直线,甚至调整jframe的大小

  void graph(JComponent jcom,int thick,int height,int xpos,int ypos,Color col){
        Graphics2D gfx=(Graphics2D) jcom.getGraphics();
        gfx.setStroke(new BasicStroke(thick));
        gfx.setPaint(col);
        gfx.drawLine(xpos, ypos, xpos, ypos-height);
    }  

按钮点击代码

graph(jLabel1, 10, 100, 200, 200, Color.GREEN);

共 (1) 个答案

  1. # 1 楼答案

    1. 您可以创建自己的类,该类从JLabel扩展,并有一个额外的方法来决定是否必须绘制线条

      在这个新类的重写的paintComponent()方法中,在super.paintComponent()调用之后画线

    2. 将建议1中的逻辑应用于您的父组件JLabel。(不确定这是否适用于所有情况)