「java画方框」java方框绘制源码

博主:adminadmin 2022-12-01 21:58:07 45

本篇文章给大家谈谈java画方框,以及java方框绘制源码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java如何在已经画了框的地方重新画框

是这样吗?不是的话问题重新表述下,呵呵。

其实主要就是使用repaint方法,他会重新执行paint方法,重新绘制一次

import java.awt.Color;

import java.awt.Dimension;

import java.awt.Graphics;

import java.awt.Graphics2D;

import java.awt.Toolkit;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.io.IOException;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class Test2 {

private JPanel panel;

private boolean isDrawRect = false;// 是否绘制红色矩形,默认不绘制

public Test2() {

JFrame frame = new JFrame("Test");

frame.setVisible(true);// 显示

Dimension d = Toolkit.getDefaultToolkit().getScreenSize();// 屏幕大小

frame.setBounds((d.width - 800) / 2, (d.height - 600) / 2, 800, 600);// 大小,定位

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 关闭方式

frame.setLayout(null);

JButton b1 = new JButton("绘制红色矩形");

b1.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

isDrawRect = true;

panel.repaint();

}

});

b1.setBounds(2, 2, 150, 30);

JButton b2 = new JButton("绘制黑色矩形");

b2.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

isDrawRect = false;

panel.repaint();

}

});

b2.setBounds(200, 2, 150, 30);

setPanel();

panel.setBounds(5, 50, 400, 450);

frame.add(b1);

frame.add(b2);

frame.add(panel);

frame.validate();

}

private void setPanel() {

panel = new JPanel() {

private static final long serialVersionUID = 1L;

@Override

public void paint(Graphics g) {

// TODO Auto-generated method stub

super.paint(g);

Graphics2D g2D = (Graphics2D)g;

if (isDrawRect) {

g2D.setColor(Color.RED);

} else {

g2D.setColor(Color.BLACK);

}

g2D.drawRect(100, 100, 200, 300);

g.dispose();

}

};

}

public static void main(String[] args) throws IOException {

new Test2();

}

}

JAVA 如何给组件绘制边框

调用组件的

setBorder(new LineBorder(Color color))

可以绘制组件的边框,边框为像素为1,颜色为color的直线

具体可以参考组件setBorder()方法和LineBorder边框类的API

还有其他的边框类

java实现鼠标拖拽画矩形框

JDK 版本=5.0 时,少年把@Override去掉吧

程序没有错误 ,我的机子能运行

怎么运用java swing画10*10的方格图

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.GridLayout;

import java.awt.Label;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class Example9_4

{

public static void main ( String[] args )

{

new WinGrid ();

}

}

class WinGrid extends JFrame

{

private static final long serialVersionUID = 1L;

GridLayout grid;

JPanel chessboard;

WinGrid ()

{

chessboard = new JPanel ();

grid = new GridLayout (10, 10);

chessboard.setLayout (grid);

Label[][] label = new Label[10][10];

for ( int i = 0; i  label.length; i++ )

{

for ( int j = 0; j  label[i].length; j++ )

{

label[i][j] = new Label ();

if (( i + j ) % 2 == 0)

label[i][j].setBackground (Color.pink);

else

label[i][j].setBackground (Color.black);

chessboard.add (label[i][j]);

}

}

add (chessboard, BorderLayout.CENTER);

setBounds (10, 10, 570, 390);

setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);

setVisible (true);

}

}

在java里面怎么输出方格

这样,在pannel里,用一个一个lable标签来画,然后设置标签的颜色来区分开 8X8的样子。以下是源码:(可运行下,看效果)

import java.awt.Color;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

public class MyFrame extends JFrame {

private int FIELDSIZE = 40;

public MyFrame(){

setTitle("国际象棋方框示例");

setName("test");

setBounds(400, 200, 330, 350);

setResizable(false);

JPanel boardPane = new JPanel();

boardPane.setLayout(null);

add(boardPane);

JLabel[][] labs = new JLabel[8][8];

for(int x = 0; x 8; x++){

for(int y = 0; y 8; y++) {

JLabel backgroundLabel = new JLabel();

backgroundLabel.setOpaque(true);

backgroundLabel.setBounds(x*FIELDSIZE,y*FIELDSIZE,FIELDSIZE,FIELDSIZE);

boardPane.add(backgroundLabel,new Integer(1),0);

labs[x][y] = backgroundLabel;

}

}

setColor(labs);

setDefaultCloseOperation(EXIT_ON_CLOSE);

setVisible(true);

}

private void setColor(JLabel[][] labs){

for(int x=0;x8;x++){

for(int y=0;y8;y++){

if(x==0){

if(y==0){

labs[x][y].setBackground(Color.BLACK);

}else{

if(labs[x][y-1].getBackground().equals(Color.BLACK)){

labs[x][y].setBackground(Color.GRAY);

}else{

labs[x][y].setBackground(Color.BLACK);

}

}

}else{

if(labs[x-1][y].getBackground().equals(Color.BLACK)){

labs[x][y].setBackground(Color.GRAY);

}else{

labs[x][y].setBackground(Color.BLACK);

}

}

}

}

}

public static void main(String[] args) {

new MyFrame();

}

}

java画方框的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java方框绘制源码、java画方框的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-01,除非注明,否则均为首码项目网原创文章,转载请注明出处。