java制圖
㈠ java做的繪圖程序
//粗細,顏色都符合你的,你就不要不講誠信了,我也跟你沒有仇,你視而不見就沒有必要了
importjava.awt.BasicStroke;
importjava.awt.BorderLayout;
importjava.awt.FlowLayout;
importjava.awt.Frame;
importjava.awt.Graphics;
importjava.awt.Graphics2D;
importjava.awt.Label;
importjava.awt.Panel;
importjava.awt.event.MouseAdapter;
importjava.awt.event.MouseEvent;
importjava.awt.event.MouseMotionListener;
importjava.awt.event.WindowAdapter;
importjava.awt.event.WindowEvent;
{
=1L;
MouseEvente=null;
staticintstartX=-1;
staticintstartY=-1;
staticintendX=-1;
staticintendY=-1;
publicMouseDrawPanel(Stringtitle)
{
setTitle(title);
setLayout(newBorderLayout());
setResizable(false);
setSize(500,400);
setLocationRelativeTo(null);
addWindowListener(newWindowAdapter()
{
@Override
publicvoidwindowClosing(WindowEvente)
{
System.exit(0);
}
});
}
@Override
publicvoidpaintComponents(Graphicsg)
{
floatlineWidth=8.0f;
((Graphics2D)g).setStroke(newBasicStroke(lineWidth));
g.drawLine(startX,startY,endX,endY);
g.dispose();
}
publicstaticvoidmain(String[]args)
{
finalMouseDrawPanelmdp=newMouseDrawPanel("UseMouseDraw");
Panelpanel=newPanel();
panel.setLayout(newFlowLayout(FlowLayout.LEFT));
LabelstartL=newLabel("start:");
LabelendL=newLabel("end:");
finalLabelnowL=newLabel("now:");
finalLabelstartR=newLabel("000,000");
finalLabelendR=newLabel("000,000");
finalLabelnowN=newLabel("000,000");
panel.add(startL);
panel.add(startR);
panel.add(endL);
panel.add(endR);
panel.add(nowL);
panel.add(nowN);
mdp.add(panel,"South");
mdp.addMouseMotionListener(newMouseMotionListener()
{
@Override
publicvoidmouseMoved(MouseEvente)
{
nowN.setText(e.getX()+","+e.getY());
}
@Override
publicvoidmouseDragged(MouseEvente)
{
endX=e.getX();
endY=e.getY();
mdp.paintComponents(mdp.getGraphics());
startX=endX;
startY=endY;
endR.setText(endX+","+endY);
}
});
mdp.addMouseListener(newMouseAdapter()
{
@Override
publicvoidmousePressed(MouseEvente)
{
startX=e.getX();
startY=e.getY();
startR.setText(startX+","+startY);
}
@Override
publicvoidmouseReleased(MouseEvente)
{
endR.setText(e.getX()+","+e.getY());
}
});
mdp.setVisible(true);
}
}
㈡ JAVA繪圖軟體
<html>
<head>
<body>
<table width="600" height="400" cellpadding="0" cellspacing="0" border="1" bordercolordark="#000000" id="table" style="font-size:16px; color: #000000;font-weight:bold;" >
<script>
function GetALine( )
{
var fso, f, s;
s = "";
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.OpenTextFile('d:\\info.txt', 1, false);
var ss=[]
while (!f.AtEndOfStream){
ms= f.ReadLine( ).match(/name:([^|]+)\|phone:(.+)/);
document.write(
'<tr><td >',ms[1] ,'</td><td width="259" >',ms[2],'</td></tr>'
);
}
f.Close( );
}
GetALine();
</script>
</table>
</head>
</html>
㈢ Java畫圖
看來你從未動過手解決未知問題,只會做練習?
這里已經提示了怎麼做,你只需要先了解基本的Swing中的JLabel/JFrame怎麼用,然後自己自己做一個EllipseComponent覆蓋它的paintComponent(Graphicsg)方法,使用一個像Eclipse這樣的開發工具IDE,在g後面打個點就有提示這個Graphics有什麼方法可用,裡面就有2D繪圖的方法。
importjava.awt.Color;
importjava.awt.Dimension;
importjava.awt.EventQueue;
importjava.awt.Graphics;
importjava.awt.Rectangle;
importjava.awt.event.ComponentAdapter;
importjava.awt.event.ComponentEvent;
importjavax.swing.JFrame;
importjavax.swing.JPanel;
importjavax.swing.UIManager;
{
=5929654695935454925L;
publicstaticvoidmain(String[]args){
try{
UIManager.setLookAndFeel(UIManager
.());
}catch(Exceptione){
e.printStackTrace();
}
EventQueue.invokeLater(newRunnable(){
publicvoidrun(){
EllipseViewerapp=newEllipseViewer();
}
});
}
privateJPanelpanel;
publicEllipseViewer(){
add(getPanel());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pack();
setVisible(true);
addComponentListener(newComponentAdapter(){
@Override
publicvoidcomponentResized(ComponentEvente){
System.out.println("WindowResized:Frame");
}
});
}
publicJPanelgetPanel(){
if(panel==null){
panel=newEllipseComponent();
panel.setPreferredSize(newDimension(300,200));
panel.setBackground(Color.RED);
}
returnpanel;
}
{
=-1744557274793554529L;
protectedvoidpaintComponent(Graphicsg){
System.out.println("Paintcomponent");
RectangleclientArea=this.getBounds();
intheight=clientArea.height-1;
intwidth=clientArea.width-1;
//setforegroundcolor
g.setColor(Color.BLACK);
//drawcycle/ellipse
g.drawOval(0,0,width,height);
//setforegroundcolor
g.setColor(Color.ORANGE);
//fillit,wegive1pixelaslinewidth.
g.fillOval(1,1,width-2,height-2);
}
}
}
㈣ 請教JAVA繪圖問題
這個方法需要注意的地方不多,也就是重寫時,先調用 super.paint(g) 方法
paint方法不需要編寫代碼調用,只需要重寫。
其他看jdk幫助中就行了。
public void paint(Graphics g) {
super.paint(g);// 調用父類的paint方法或調用下面的方法直接繪制組件
g.drawImage(image, 0, 0, null);
g.setFont(new Font("", Font.BOLD, 13));
g.setColor(Color.WHITE);
}
paint
public void paint(Graphics g)繪制容器。該方法將 paint 轉發給任意一個此容器子組件的輕量級組件。如果重新實現此方法,那麼應該調用 super.paint(g) 方法,從而可以正確地呈現輕量級組件。如果通過 g 中的當前剪切設置完全剪切某個子組件,則不會將 paint() 轉發給這個子組件。
覆蓋:
類 Component 中的 paint
參數:
g - 指定的 Graphics 窗口
另請參見:
Component.update(Graphics)
㈤ 用java編寫繪圖工具的代碼
你說的主要的使用線成,如果你學會java小程序還是比較好做的.
焌雲(德)
管理員
這兩個都是很好的例子,你可以借鑒一下.
㈥ java繪圖,求代碼
上代碼:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.LayoutManager;
import java.awt.Paint;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.event.*;
public class YuanYiDong extends JFrame{
private static int BANJIN=0;
private static int X=0;
private static int Y=0;
JTextField rTxt=new JTextField(5);
JTextField xField=new JTextField(5);
JTextField yField=new JTextField(5);
JButton paintBt=new JButton("畫");
JLabel huaban=new huaban();
JPanel jPanel=new JPanel();
JLabel banjingLabel,xLabel,yLabel;
public YuanYiDong(){
banjingLabel=new JLabel("半徑");
xLabel=new JLabel("X坐標");
yLabel=new JLabel("Y坐標");
this.setTitle("圓的移動");
this.setLocation(300,100);
this.setSize(500, 400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
this.add(rTxt);
jPanel.setLayout(new FlowLayout());
add(huaban,BorderLayout.CENTER);
jPanel.add(banjingLabel);
jPanel.add(rTxt);
jPanel.add(xLabel);
jPanel.add(xField);
jPanel.add(yLabel);
jPanel.add(yField);
jPanel.add(paintBt);
add(jPanel,BorderLayout.NORTH);
paintBt.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
BANJIN=Integer.parseInt(rTxt.getText());
X=Integer.parseInt(xField.getText());
Y=Integer.parseInt(yField.getText());
huaban.repaint();
}
});
}
private void drawCirlce(Graphics g) {
g.setColor(Color.blue);
g.fillOval(X, Y, BANJIN,BANJIN);
}
public static void main(String[] args) {
YuanYiDong frame = new YuanYiDong();
}
public class huaban extends JLabel{
public huaban(){}
public void paint(Graphics g) {
Image image = createImage(getWidth(), getHeight());
drawCirlce(image.getGraphics());
g.drawImage(image, 0, 0, null);
}
}
}
給分吧!
㈦ 用java編寫畫圖工具
要求比較多阿 給你個簡單的供參考
import java.awt.*;
import java.awt.event.*;
class Mycanvas extends Canvas
{ int x,y,r;
Mycanvas()
{ setBackground(Color.cyan);
}
public void setX(int x)
{ this.x=x;
}
public void setY(int y)
{ this.y=y;
}
public void setR(int r)
{ this.r=r;
}
public void paint(Graphics g)
{ g.drawOval(x,y,2*r,2*r); //通過Graphics對象畫圓
}
}
class WindowCanvas extends Frame implements ActionListener
{ Mycanvas canvas;
TextField inputR,inputX,inputY;
Button b;
WindowCanvas()
{ canvas=new Mycanvas();//創建畫布對象
inputR=new TextField(5);
inputX=new TextField(4);
inputY=new TextField(4);
Panel pNorth=new Panel(), pSouth=new Panel();//創建兩個面板
pNorth.add(new Label("圓的位置坐標:"));
pNorth.add(inputX);
pNorth.add(inputY);
pSouth.add(new Label("圓的半徑:"));
pSouth.add(inputR);
b=new Button("確定");
b.addActionListener(this);
pSouth.add(b);
add(canvas,BorderLayout.CENTER); //添加畫布對象到中央區域
add(pNorth,BorderLayout.NORTH);
add(pSouth,BorderLayout.SOUTH);
setBounds(100,100,300,200);
setVisible(true);
}
public void actionPerformed(ActionEvent e)
{ int x,y,r;
try { x=Integer.parseInt(inputX.getText());
y=Integer.parseInt(inputY.getText());
r=Integer.parseInt(inputR.getText());
canvas.setX(x); //設置自定義畫布對象的實例變數x
canvas.setY(y);//設置自定義畫布對象的實例變數y
canvas.setR(r);//設置自定義畫布對象的實例變數r
canvas.repaint();//重畫自定義畫布對象
}
catch(NumberFormatException ee)
{ x=0;y=0;r=0;
}
}
}
public class Example18
{ public static void main(String args[])
{ new WindowCanvas();
}
}
㈧ 製作一個JAVA繪圖軟體
這是畢業設計嗎?
㈨ java 畫圖問題
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class DrawOvel extends JFrame {
class Mouse1 extends MouseAdapter {
public void mousePressed(MouseEvent e) {
start_x = e.getX();
start_y = e.getY();
}
public void mouseReleased(MouseEvent e) {
int minX = Math.min(start_x, e.getX());
int minY = Math.min(start_y, e.getY());
int maxX = Math.max(start_x, e.getX());
int maxY = Math.max(start_y, e.getY());
g_image.drawOval(minX, minY, maxX - minX, maxY - minY);
g_jpanel.drawImage(image, 0, 0, null);
}
}
class Mouse2 extends MouseMotionAdapter {
public void mouseDragged(MouseEvent e) {
int minX = Math.min(start_x, e.getX());
int minY = Math.min(start_y, e.getY());
int maxX = Math.max(start_x, e.getX());
int maxY = Math.max(start_y, e.getY());
g_jpanel.drawImage(image, 0, 0, null);
g_jpanel.drawOval(minX, minY, maxX - minX, maxY - minY);
}
}
public DrawOvel() {
super();
setSize(600, 600);
jpanel = new JPanel();
add(jpanel);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
g_jpanel = jpanel.getGraphics();
image = jpanel.createImage(jpanel.getWidth(), jpanel.getHeight());
g_image = image.getGraphics();
jpanel.addMouseListener(new Mouse1());
jpanel.addMouseMotionListener(new Mouse2());
}
JPanel jpanel;
Graphics g_jpanel, g_image;
Image image;
int start_x, start_y;
public static void main(String[] args) {
DrawOvel c = new DrawOvel();
}
}
㈩ Java繪圖和事件
這個……
public void mouseReleased(MouseEvent e)
//松開滑鼠的處理方法
{
x1=e.getX();
y1=e.getY();
repaint();
}
}
);