[英]How do you draw a line with Java?
我試圖畫一條線,但無法弄清楚。 我實際上需要為我的計算機科學實驗室畫一個三角形。 我對編程很陌生,離開了 Horstmann 的 Big Java 書。 目前還不清楚如何准確地繪制一些東西,我就是不明白。 首先它引入了一個“EmptyFrameViewer”,並說它是“必要的填充”來顯示一個框架,我可以開始工作。 我彈出了一個框架,但從來沒有在框架上畫過任何東西。 以下是我的代碼,我得到的只是一個 500x500 幀。 誰能幫我? 我只想要一條線! 一旦我有一條線,我確信我可以弄清楚如何畫更多的東西。
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Line2D;
import javax.swing.JComponent;
import javax.swing.JFrame;
public class DrawFrame extends JComponent
{
public void lineComponent (Graphics g)
{
Graphics2D g2 = (Graphics g);
Line2D.Double line1 = new Line2D.Double(30, 110, 80, 110);
g2.draw(line1);
}
public static void main(String[] args)
{
JFrame frame = new JFrame();
frame.setSize(500, 500);
frame.setTitle("BE A LINE");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
DrawFrame component = new DrawFrame();
frame.add(component);
frame.setVisible(true);
}
}
對於自定義繪畫,您需要使用JComponent
的paintComponent()
方法。 嘗試通過在代碼中添加下一行來更改代碼。
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
lineComponent(g);
}
同時更改Graphics2D g2 = (Graphics g);
到Graphics2D g2 = (Graphics2D) g;
,因為該代碼有編譯錯誤。
如果您將方法的名稱從lineComponent
為paintComponent
,您將看到將繪制線條。
或者您可能想要創建一個單獨的paintComponent 方法,您可以在其中調用lineComponent。
可以繪制一條像復選框一樣對齊的線,然后對齊另一條線 Square --------Square ---------Square ----------sqa
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.