如何用ruby编程获得网页的html Java GUI编程
如何用ruby编程获得网页的html
有个‘hpricot’的gem可以用来解析html文件。requirerubygemsrequirehpricotrequireopen-uridoc=Hpricot(open(putsdoc.search(h1).first.inner_html
Java GUI编程
我做了下修改,你运行一下看看。另外还有点小问题,不过我没时间修改了,去忙了。
import java.awt.Color
import java.awt.Dimension
import java.awt.Graphics
import javax.swing.JComponent
public class MovingComponent extends JComponent {
private int x
private int y
private final boolean RIGHT = true
//private final boolean LEFT = false
private boolean direction
public MovingComponent()
{
x = 0
y = 0
direction = RIGHT
}
public int getX(){
return x
}
public void reverse(){
direction = !direction
}
public void paintComponent(Graphics g)
{
g.setColor(Color.GREEN)
g.fillRect(x, y, 100, 100)
}
public void move()
{
int width = getWidth ()
if(direction){
x = x   2
}else{
x = x - 2
}
repaint()
}
}
import java.awt.event.ActionEvent
import java.awt.event.ActionListener
import javax.swing.JFrame
import javax.swing.Timer
public class MovingFrame extends JFrame{
private MovingComponent box
public MovingFrame()
{
box = new MovingComponent()
add(box)
setSize(800,600)
TimerListener listener = new TimerListener()
Timer t = new Timer(10,listener)
t.start()
}
class TimerListener implements ActionListener
{
@Override
public void actionPerformed(ActionEvent event) {
if((box.getX()*2  100 > getWidth()) ||( box.getX() < 0)){
                            //上面为什么要乘以2,说实话,我暂时没想明白
box.reverse()
}
System.out.println(box.getX()   " "   getWidth())
box.move()
}
}
}
import javax.swing.JFrame
public class MovingTester {
public static void main(String args[])
{
JFrame frame = new MovingFrame()
frame.setVisible(true)
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
frame.setTitle("Moving Box!")
}
}