javaの勉強をはじめたばかりのものです。

アプレットについて勉強しています。
ボタンを作って,それを押すと,全く,新しい
画面に移り変わると言うプログラムを作りたいです。

どのようにすればよいのか,また,どんな本で勉強
すればよいのか,教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

 ボタンを押すとこのページにジャンプするアプレットのプログラムとページのHTMLは、


以下のようになります。

-----HTML-----

<html>

<head><title>jumpapp</title></head>

<body style="background-color:green;">

<applet code="jumpapp" codebase="." height="300" width="300">
</applet>

</body>

</html>

-----Javaプログラム(jumpapp.java)-----

import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import java.net.*;

public class jumpapp extends Applet implements ActionListener {

private Button JumpButton;

public void init() {

JumpButton = new Button("Jump To OKWave");
JumpButton.addActionListener(this);
JumpButton.setActionCommand("jump");
add(JumpButton);

};

public void actionPerformed(ActionEvent ev) {

try {

if (ev.getActionCommand() == "jump") {
getAppletContext().showDocument(new URL("http://okwave.jp/qa81697.html"));
};

} catch (Exception ex) { };

};

}
    • good
    • 0

アプレットの作り方自体を知りたいと言うQですか?


それとも、他の画面に移り変わる部分の書き方をお尋ねですか?

前者は、GooやFresh Eye、yahooなどで、探していただくと、Java Applet入門のページがたくさんあります。
いくつか紹介しておきます。
http://www.horae.dti.ne.jp/~yoji/
http://poyo.goto.info.waseda.ac.jp/java/

後者ですが、サンプルを載せておきます。
あとは、調べてみてください。

URL url = null;
try
{
//飛び先のURL
url = new URL("http://www.okweb.ne.jp");
}
catch( MalformedURLException ex)
{
//URLの生成に失敗したときの処理
showStatus(ex.toString()+"URL ERROR");
return;
}
getAppletContext().showDocument( url );
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QJAVAアプレットについて

JAVAアプレットとはJAVAで作成したWebベースでないプログラムと考えてよろしいですか?
プラットフォームに依存しないWindowsベースのVBのイメージで考えているのですが
間違っていませんでしょうか?
なかなかイメージできずにおります。
VB6.0、2005などの開発経験はあります。

もしよろしければ教えて頂けませんか?
よろしくお願い致します。

Aベストアンサー

JavaアプレットはWebベースのアプリケーションです。
Flashなどと同じようなもので、HTTPサーバーで配信されてブラウザ上で
実行されます。

VBのようなデスクトップアプリケーションをJavaで作成した場合、
Javaアプリケーションと呼びます。

QJavaのアプレットについて質問です。

星型の図形をアプレットビューワ上でマウスを押した場所に移動させたいのですが・・・
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;
import java.awt.Polygon;

public class Enshu1_5 extends Applet implements MouseListener
{
int px []={100,80,10,70,40,100,160,130,190,120};
int py []={10,75,75,113,190,140,190,113,75,75};
private Polygon poly = new Polygon(px,py,10 );



public void init()
{
addMouseListener(this);
}

public void mouseClicked(MouseEvent e)
{
}
public void mouseEntered(MouseEvent e)
{
}
public void mouseExited(MouseEvent e)
{
}
public void mousePressed(MouseEvent e)
{
}

public void mouseReleased(MouseEvent e)
{
}


public void paint(Graphics g)
{
g.setColor(Color.red);
g.fillPolygon(poly);
g.setFont(new Font("serif",Font.BOLD,24));
g.drawString("Star",100,200);
}
}
こんな感じでつくってみたのですが現在位置とクリック位置との差分割り出し方をpublic void mouseClicked(MouseEvent e)の所に書きたいのですが普通にpoly.translate( e.getX(), e.getY() );をしてしまうと原点からの移動になってしまうため、フィールド上にint x=0,y=0をつくりmouseClickedのところで
if(e.getX()>x&&e.getY()>y)
{
int dx=e.getX()-x;
int dy=e.getY()-y;
x=dx;
y=dy;
poly.translate(dx,dy);
repaint();
}の様な感じで考えられる条件を条件分岐していこうと思ったのですがどうもうまくいきませんしかなりかさばったものになってしまうと思います。何かいい方法はないでしょうか?
教えて下さい><

星型の図形をアプレットビューワ上でマウスを押した場所に移動させたいのですが・・・
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;
import java.awt.Polygon;

public class Enshu1_5 extends Applet implements MouseListener
{
int px []={100,80,10,70,40,100,160,130,190,120};
int py []={10,75,75,113,190,140,190,113,75,75};
private Polygon poly = new P...続きを読む

Aベストアンサー

こんにちは。

差分を求めるのにフィールド変数で保持しておく必要があるのは純粋にクリックされた座標です。
x=dxをしてしまってはNGです。
また、特に条件は必要ないと思います。
xとyにクリックされた座標を保持しておけばクリックされる毎に前回クリック時の座標が減算されます。

public void mouseClicked ( MouseEvent e ) {
// 前回クリック座標を減算
int dx = e.getX() - x;
int dy = e.getY() - y;
// 今回のクリック座標を代入
x = e.getX();
y = e.getY();
poly.translate ( dx, dy );
repaint();
}

Qjavaアプレット リロードするには?

アプレット-サーブレット通信的なプログラムを作っているのですが、次の手順で正常に動きません。

(1)アプレットのロード
(2)ログインする。このときは正常
(3)他のページに移る (又は ブラウザの更新を押す。)
(4)戻ってきて再度ログインはします。が、その後は動かない。

とりあえず1回目は正常に動くのでおそらく1回目で何かが残っているのではないかと思うのですが、どうしたらいいですか?

Aベストアンサー

ログインの処理自体はアプレットのコードで行っておられるのでしょうか?
サーブレットとの通信では、セッションの維持を意識しているのでしょうか?
など、アプレットのみの問題なのか、サーブレットとの連携が絡んでいるのか、
お書きになっている内容からは推測するのが難しいと思います。
アプレットのコードを簡単なものにしてみて、動きを見るのも手かと。

QJAVAのアプレットにてバグ?

JAVAのアプレットにてバグのようなものが発生します。
表示されるべき文字が表示されないで、その表示されない画面のアプレットの画面を動かしたり、大きさを変えたりすると文字が表示されます。
これはバグでしょうか。

プログラミング自体はコンパイルもでき、ちゃんとその文字が表示されるようになっていて、間違いはないと思います。

Aベストアンサー

とりあえず、
文字を表示状態にした直後にrepaint()
にしてみたら?

QJAVAのアプレットの文の改行方法。

JAVAのアプレットにてstringにて変数を宣言し、そこに文字列を代入します。
その後initメソッド内でその変数を呼び出したら、代入した文字列が出ます。
文字列を改行を行いたいのですが、文字列に\nをはさんでも改行されません。
改行するにはどのようにしたら良いでしょうか。

具体的にはこのような感じです。

[javaファイル]
import java.applet.*;
import java.awt.*;

public class mozi extends Applet{

private Label AA;
private String moziretsu = "こんにちは\nこんばんは";

public void init(){

add(AA = new Label(moziretsu));

}

}


[htmlファイル]
<html>
<head><title>mozi</title></head>
<body>
<applet code="mozi" codebase="." width="700" height="240">
</applet>
</body>
</html>

JAVAのアプレットにてstringにて変数を宣言し、そこに文字列を代入します。
その後initメソッド内でその変数を呼び出したら、代入した文字列が出ます。
文字列を改行を行いたいのですが、文字列に\nをはさんでも改行されません。
改行するにはどのようにしたら良いでしょうか。

具体的にはこのような感じです。

[javaファイル]
import java.applet.*;
import java.awt.*;

public class mozi extends Applet{

private Label AA;
private String moziretsu = "こんにちは\nこんばんは";

public void init(){

a...続きを読む

Aベストアンサー

Labelでは改行できません。
swingのJLabelなら改行できます。
http://terai.xrea.jp/Swing/MultiLineLabel.html


このカテゴリの人気Q&Aランキング

おすすめ情報