如何在Java GUI中显示一行?
我想在Java swing中的两个图像之间划一条线。
我找到了不同的绘制线条的方法,但没有我想要的方式让我想到也许我只需要在我想要的位置插入一行图像?
在任何情况下,我都想要一些东西
O---O---O---O
要显示’O是图像,破折号是我想要的线……
我希望这很清楚,我不是白痴:P
非常感谢,
亚历山大
正如我在评论中指出的那样,你可以只画一条线,然后在设定的增量点上画线
import java.awt.*; import javax.swing.*; public class Test { public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { final Image image = new ImageIcon(Test.class .getResource("/resources/images/stackoverflow.png")) .getImage(); final BasicStroke stroke = new BasicStroke(5f); JPanel panel = new JPanel() { @Override protected void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2 = (Graphics2D) g; g2.setStroke(stroke); g2.drawLine(10, 75, 290, 75); for (int x = 10; x < 300; x += 50) { g2.drawImage(image, x, 59, this); } } @Override public Dimension getPreferredSize() { return new Dimension(300, 150); } }; JOptionPane.showMessageDialog(null, panel, "Line With Images", JOptionPane.PLAIN_MESSAGE); } }); } }
只需调用方法drawLine()并插入位置的参数:)