比如在
paint(Graphics g){
.........
里面使用
g.setPaint( Color.black );
g.drawRect( 10, 10 ,100, 100 );明白?

解决方案 »

  1.   



    应该是
    fillpaint(Graphics g){
    .........
    里面使用
    g.setPaint( Color.black );
    g.fillRect( 10, 10 ,100, 100 );
      

  2.   

    我刚做了一个Servlet:
    package chinamobile;import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    import java.util.*;
    import java.sql.*;
    import java.lang.String;import java.awt.*;
    import java.awt.image.*;
    import com.sun.image.codec.jpeg.*;public class drawpic extends HttpServlet {
        private static final String CONTENT_TYPE = "image/jpeg;charset=GB2312";    public void init() throws ServletException {
        }    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
          doPost(request,response);
        }    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {        response.setContentType(CONTENT_TYPE);
            String[] Px=null;  //存放所有基站的坐标值
            String[] Py=null;
            int P_totoal=0;        String TableName = request.getParameter("TableName");
            String XSBH = request.getParameter("XSBH");
            String imageFile=request.getParameter("map");
            String fontColor="ffff00";
    // String[] fontColor=null; //表名  县市编号  图片颜色  图片路径由参数直接辅值
    try{
    Class.forName("oracle.jdbc.driver.OracleDriver");
    String url="jdbc:oracle:thin:@127.0.0.1:1521:ORCL";String user="zhb";
    String password="sa";
    Connection conn= DriverManager.getConnection(url,user,password);
    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);String sql="select JZZB_X,JZZB_Y from "+TableName+" "+" where XSBH="+"'"+XSBH+"'";
    ResultSet rs=stmt.executeQuery(sql);
              while(rs.next())
              {
                Px[P_totoal]=rs.getString(1) ;
                Py[P_totoal]=rs.getString(2) ;
                P_totoal++;
              }
    rs.close();
    stmt.close();
    conn.close();
    }
     catch  (Exception  e)
     {System.out.print(e);  }        ServletOutputStream output=response.getOutputStream();        if(imageFile.toLowerCase().endsWith(".jpeg")||imageFile.toLowerCase().endsWith(".jpg")) {
                imageFile = getServletContext().getRealPath(imageFile);
                InputStream imageIn = new FileInputStream(new File(imageFile));
                JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(imageIn);
                BufferedImage image = decoder.decodeAsBufferedImage();
                Graphics g=image.getGraphics();            //设置颜色
                g.setColor(new Color(Integer.parseInt(fontColor,16)));            for (int i=0;i<P_totoal;i++)
                {
                g.drawRect(Integer.parseInt(Px[i]) ,Integer.parseInt(Py[i]),10,10);
                g.fillRect(Integer.parseInt(Px[i]) ,Integer.parseInt(Py[i]),10,10);
                //输出数据流
                JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(output);
                encoder.encode(image);
                }
                imageIn.close();
            }
            output.close();
        }
      }
      

  3.   

    如果要填充非规则的四边形
    那么只能用多边形来做
    具体我想你会做的了Polygon