一个“嗷嗷”难的applet绘图问题,欢迎讨论! 当然用数组来存放这些点的坐标信息然后画图刚好有一个方法g.drawPolyline(int[] x,int[] y,int nPoint);可以将所有点连接起来 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 to asdmonster:其实我也想过算法的问题,但是这个问题已经解决了,我是通过在后台数据库Oracle中利用存储过程来实现公交车线路的查询算法,然后将线路经过的站点的坐标依次插入到一个名为tb_javaresult的表中,查询结果(即乘车方案,字符串类型)插入到了另一个名为tb_checkplan的表中。我现在遇到的难题是:1、applet与后台数据库Oracle的连接问题;2、就如楼顶我的问题一样,将tb_javaresult表中的坐标值依次传递给applet,其中applet每接受一个坐标参数后应完成的工作为:在背景地图上显示这个坐标值,然后用与上一个坐标值连线;依次类推,最后显示出一个完整的乘车线路图。我查阅过很多有关java2D方面的资料,好像要在背景图上放置新的图片需要用到双缓冲的概念。那么,在背景图上根据坐标值描点和连线算不算是在背景图上放置新的图片呢?困惑呀! 诸位大虾 我正在所一个applet动态画曲线,Sql server 数据库我用servlet 从数据库里面的读出参数 比如说温度 //动态监控变化的温度---数据采集有下位机作传给 applet 我在本地机子上调试了出来http://127.0.0.1:8080但是 只剩是一段一段的当参数改变的时候就不能显示从改变的那一点和下一点之间的连线更惨的是我用ip调试的时候根本就不画线了 ---(线程死了)很郁闷 (毕业设计马上完工 很着急 急死了)我把我的代码附上那位大虾指点一下在下感激不尽 如果能有机会我一定请客感谢大家//代码***********import java.io.*;import java.net.*;//import java.lang.*;import java.awt.*;import java.applet.*;public class drawline extends java.applet.Applet implements Runnable { Thread dthread; URL fileur; int i=1; //int x; int y; //int b; private int x1 ; private int x2 ; private int y1 ; private int y2 ; String f; public void init() { //用127.0.0.1:8080可是画出但是效果不好,202.196.47.7自己的IP用于对外发布,线程只开了一次就停了而且不能得到SERVLET的数据 String url = "http://127.0.0.1:8080/examples/servlet/db"; //db 用于数据库读取的servlet名称 // String url = "http://202.196.47.7:8080/examples/servlet/db"; try { fileur = new URL(url); } catch ( MalformedURLException e) { System.out.println("Can't get URL: " ); } } public void start() { if (dthread == null) { dthread = new Thread(this); dthread.start(); } } public void stop() { if (dthread != null) { dthread.stop(); dthread = null; } } public void run() { //i=i+1; InputStream filecon = null; DataInputStream filedata = null; String fileline; //while(true){ while(true){ try { i=i+1; filecon = fileur.openStream(); filedata = new DataInputStream(filecon); fileline = filedata.readLine(); f =fileline; //g =Integer.valueOf(fileline).intValue(); y = Integer.valueOf(f).intValue(); } } catch (IOException e) { System.out.println("Error in I/O:" + e.getMessage()); } try{ dthread.sleep(1000); } catch (InterruptedException e){} x2 = i; y2 = y; repaint(); x1 = x2; y1 = y2; } } public void paint(Graphics g){ update(g); } public void update(Graphics g){ g.setColor(Color.black); g.drawLine(x1,y1,x2,y2); } } 如何用脚本实现jdk的安装 为什么打印这段二维数组有问题 关于 SocketChannel.write(ByteBuffer src) 的奇怪的疑难问题 欲聚大众之力解决 真是见鬼了,我自己的帖子怎么没法删除? 关于java线程的结束。 初学多线程socket编程,请大家看一下有哪些问题和需要改进的地方。 该^\\+[a_z]正则表达式,匹配什么? 高手请进!(关注者有分) 超级菜鸟的问题 关于抽象类的一个问题 类继承时候的编译问题 关于Visual J++安装的问题
其实我也想过算法的问题,但是这个问题已经解决了,我是通过在后台数据库Oracle中利用存储过程来实现公交车线路的查询算法,然后将线路经过的站点的坐标依次插入到一个名为tb_javaresult的表中,查询结果(即乘车方案,字符串类型)插入到了另一个名为tb_checkplan的表中。我现在遇到的难题是:
1、applet与后台数据库Oracle的连接问题;
2、就如楼顶我的问题一样,将tb_javaresult表中的坐标值依次传递给applet,其中applet每接受一个坐标参数后应完成的工作为:在背景地图上显示这个坐标值,然后用与上一个坐标值连线;依次类推,最后显示出一个完整的乘车线路图。
我查阅过很多有关java2D方面的资料,好像要在背景图上放置新的图片需要用到双缓冲的概念。那么,在背景图上根据坐标值描点和连线算不算是在背景图上放置新的图片呢?困惑呀!
我正在所一个applet动态画曲线,Sql server 数据库
我用servlet 从数据库里面的读出参数
比如说温度 //动态监控变化的温度---数据采集有下位机作
传给 applet
我在本地机子上调试了出来http://127.0.0.1:8080
但是 只剩是一段一段的当参数改变的时候就不能显示从改变的那一点和下一点之间的连线
更惨的是我用ip调试的时候根本就不画线了 ---(线程死了)
很郁闷
(毕业设计马上完工 很着急 急死了)
我把我的代码附上
那位大虾指点一下在下感激不尽 如果能有机会我一定请客感谢大家//代码***********
import java.io.*;
import java.net.*;
//import java.lang.*;
import java.awt.*;
import java.applet.*;public class drawline extends java.applet.Applet implements Runnable { Thread dthread; URL fileur;
int i=1;
//int x;
int y;
//int b;
private int x1 ;
private int x2 ;
private int y1 ;
private int y2 ;
String f; public void init() {
//用127.0.0.1:8080可是画出但是效果不好,202.196.47.7自己的IP用于对外发布,线程只开了一次就停了而且不能得到SERVLET的数据
String url = "http://127.0.0.1:8080/examples/servlet/db"; //db 用于数据库读取的servlet名称
// String url = "http://202.196.47.7:8080/examples/servlet/db"; try { fileur = new URL(url); } catch ( MalformedURLException e) { System.out.println("Can't get URL: " );
} } public void start() { if (dthread == null) { dthread = new Thread(this); dthread.start(); } } public void stop() { if (dthread != null) { dthread.stop(); dthread = null; } } public void run() {
//i=i+1;
InputStream filecon = null; DataInputStream filedata = null; String fileline; //while(true){
while(true){
try {
i=i+1; filecon = fileur.openStream(); filedata = new DataInputStream(filecon); fileline = filedata.readLine();
f =fileline;
//g =Integer.valueOf(fileline).intValue();
y = Integer.valueOf(f).intValue();
} } catch (IOException e) { System.out.println("Error in I/O:" + e.getMessage()); } try{ dthread.sleep(1000); } catch (InterruptedException e){}
x2 = i;
y2 = y;
repaint();
x1 = x2;
y1 = y2;
}
}
public void paint(Graphics g){
update(g);
}
public void update(Graphics g){
g.setColor(Color.black);
g.drawLine(x1,y1,x2,y2);
}
}