No.2ベストアンサー
- 回答日時:
サンプルを作ってみました、多分、イメージとは異なるとは思いますが、たたき台にでもしてやってください。
for java1.5
-------------------------------------------------------------------
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
/*
<applet code="Sample.class" width="100" height="90"></applet>
*/
enum JankenKind { ぐー, ちょき, ぱー };
enum JankenJudge { 勝ち, 負け, あいこ };
public class Sample extends Applet implements ActionListener {
Label compSelect, msg, result;
JankenButton goo, choki, par;
JankenKind select;
int win = 0, loose = 0;
public void init(){
setLayout(new BorderLayout());
// メッセージとコンピュータの手の表示
Panel top = new Panel();
top.setLayout(new GridLayout(2,1));
msg = new Label("じゃんけんしましょう", Label.CENTER);
top.add(msg);
compSelect = new Label("?", Label.CENTER);
top.add(compSelect);
add(top, BorderLayout.NORTH);
// ユーザの選ぶボタンの表示
Panel center = new Panel();
center.setLayout(new GridLayout(1,3));
goo = new JankenButton(JankenKind.ぐー);
goo.addActionListener(this);
center.add(goo);
choki = new JankenButton(JankenKind.ちょき);
choki.addActionListener(this);
center.add(choki);
par = new JankenButton(JankenKind.ぱー);
par.addActionListener(this);
center.add(par);
add(center, BorderLayout.CENTER);
// 対戦結果表示
result = new Label(""+win+"勝"+loose+"敗です", Label.CENTER);
add(result, BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e){
select = Janken.select();//コンピュータの手
compSelect.setText("私の手:"+select.toString());
JankenButton bt = (JankenButton)e.getSource();//選択した手
switch(Janken.judge(bt.kind(), select)){//判定
case 勝ち:
win++;
msg.setText("あなたの勝ちです");
break;
case 負け:
loose++;
msg.setText("あなたの負けです");
break;
case あいこ:
msg.setText("あいこです");
break;
}
result.setText(""+win+"勝"+loose+"敗です");
if(win+loose == 3){//都合3戦した(あいこはノーカウント)
goo.setVisible(false);//ボタンを非表示にする
choki.setVisible(false);
par.setVisible(false);
}
}
}
class Janken {
public static JankenKind select(){
switch((int)(1+3*Math.random())){
case 1://ぐー
return JankenKind.ぐー;
case 2://ちょき
return JankenKind.ちょき;
case 3://ぱー
return JankenKind.ぱー;
}
return null;
}
public static JankenJudge judge(JankenKind me, JankenKind you){
if(me == you)
return JankenJudge.あいこ;
else if(me == JankenKind.ぐー && you == JankenKind.ちょき ||
me == JankenKind.ちょき && you == JankenKind.ぱー ||
me == JankenKind.ぱー && you == JankenKind.ぐー)
return JankenJudge.勝ち;
else
return JankenJudge.負け;
}
}
class JankenButton extends Button{
protected JankenKind kind;
public JankenButton(JankenKind k){
super(k.toString());
kind=k;
}
public JankenKind kind(){
return kind;
}
}
No.1
- 回答日時:
とりあえず、入門書を一回読んでから始めることをお勧めします。
VisualBasicと違ってGUI系のものを作るとなると結構面倒です。
>サンプルなどのデータ提供お願いします。
java じゃんけん 等のキーワードで検索をかけると結構ソースが見つかります。
>結構困ってます。
困っていることを具体的に挙げてみてください。
抽象的な質問というのは答えにくいものです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(社会・学校・職場) 自分が病んでいる時に彼氏が「成功体験ばかりや負けた経験が少ない人ほど弱い、負けを経験しないと少し予想 3 2022/10/08 19:08
- IT・エンジニアリング プログラマの仕事内容 4 2022/08/13 00:34
- 哲学 勝ち負けの哲学 19 2023/04/12 08:50
- アニメ 幽遊白書・暗黒武術会「3位決定戦」が実施された場合? 1 2022/10/30 00:00
- Java Java モンスターブリーダー 1 2023/02/05 09:44
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- Java Java 石取りゲーム 3 2023/02/02 15:46
- 格闘技 相撲対決 結果 3 2022/07/03 19:59
- いじめ・人間関係 テストの点で勝手に勝負してくる友達について 1 2022/10/25 21:24
- メイク 私の目は、結構蒙古襞があって、瞼も重めだし、奥二重だから作った二重線が元々の奥二重線に負けるタイプで 0 2022/06/28 19:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画面を切り替えたい
-
あるコンボボックスを選択する...
-
チェックボックスを動的に生成する
-
cadで作った図面をフレーム上で...
-
JAVAアプレット(簡易計算機)...
-
JAVA コンソールではなくGUIで...
-
【Swing】JPanel クラス外から...
-
配列にnullを代入すると、null...
-
C#で動的配列Listの中身をListB...
-
C言語のポインターに関する警告
-
Javaで改行などが出来ないのです。
-
c# デリゲート関連の命名について
-
配列を逆順させて表示させる方...
-
応用情報技術者試験の令和元年...
-
getStringの値がNULLの時の処理
-
Path型をString型へ変換する(Java)
-
[JAVA]try 内の変数を外で!?
-
クラスを使った電卓のプログラム
-
system.out.printが出力されない
-
getName()で取得したファイル名...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
java junit list同士の比較方法
-
javaで文字数制限するには?
-
JTableの列ヘッダ
-
TextAreaでの文字の色
-
最後の行に移動するには?
-
【Swing】JPanel クラス外から...
-
4択クイズでのランダム出題の...
-
コンパイルエラー <identifier...
-
JPanelの重ね方/OverlayLayout他
-
JPanelの切り替えと再描画
-
エラーで式の開始が不正ですと...
-
JTable の 列幅を個別に設定す...
-
VB6.0でのTextboxの高さ変更
-
連番をオブジェクト名の最後に...
-
ボタンクリック後パネルを再描...
-
JavaでのSwingを使った簡易電卓...
-
ArrayListの使い方について(初...
-
Buttonを押すと画像が表示され...
-
あるコンボボックスを選択する...
-
KeyListenerの使い方について
おすすめ情報