★★ Java の宿題ここで答えます Part 53 ★★ >948 んと、コメント付けるだけでいいのかな?
あ、間違いました。 948の人ですが、プログラムのほうにコメントをつけるだけいいのかな?
>>943 ポーカーやってみたんですが、
カードをクリックすると、選択した左側のカードが
選ばれるのですが、私だけですか?
>>952 インスタンス変数に i j k l といった無意味な文字を使わないでください。
どうしても、演算処理で1 なら +、2なら - ・・・とするのであれば、最低限
private static final int PLUS = 1;
としてください。
読みにくいと直しにくいです。
【 課題 】 アプレットを作成するに当たって拡大、縮小ボタンをセットし、拡大ボタンを押すと縦横幅を1.5倍に拡大し 縮小ボタンを1/1.5倍に縮小する機能を付けた物を作成してください。それにあたって拡大、縮小を繰り返しても 四角形の大きさが最初の大きさに戻るように工夫して作りなさい。 【 期限 】 今日まで 【 補足 】 丸投げ 疑問点は拡大、縮小を繰り返しても四角形の大きさが最初の大きさに戻るように コーディングするやり方がどうもわかりません。
結局、
>>903 のポーカーを作ると予告した人は逃げちゃったのかよ・・・
一番困るパターンだな。
予告すると誰も回答しなくなるんだよ。土壇場でしかも報告もせずに
逃げるんだんて、嫌がらせ以外のなにものでもない。
959 :
957 :2005/12/04(日) 15:48:18
/* <applet code="samp.class" width="500" height="500"></applet> */ import java.awt.*; import java.awt.event.*; import java.applet.*; public class samp extends Applet implements ActionListener{ int x,y,x0,y0,x1,y1,x2,y2; int oldx, oldy;//未使用 int count = 0; Font font; Color color; Button Button1, Button2; public void init(){ font = new Font("Serif",Font.BOLD,72); color = new Color((int)(Math.random()*256),(int)(Math.random()*256),(int)(Math.random()*256)); y1 = x = y = 10; x1 = 200; oldx = x2 = x0 = 80; oldy = y2 = y0 = 100; Button1 = new Button("拡大"); Button2 = new Button("縮小"); exButton.addActionListener(this); reButton.addActionListener(this); add(Button1); add(Button2); }
960 :
957 :2005/12/04(日) 15:48:50
public void paint(Graphics g){ g.setFont(font); g.setColor(color); /* これでいいのか!? */ if(count == 0){ x0 = 80; y0 = 100; } g.fillRect(x,y,x0,y0); /* デバッグ関数 */ g.fillRect(x1,y1,x2,y2); g.drawString(String.valueOf(x0),10,200); g.drawString(String.valueOf(y0),10,250); g.drawString(String.valueOf(x2),10,300); g.drawString(String.valueOf(y2),10,350); g.drawString(String.valueOf(count),10,400); } public void actionPerformed(ActionEvent e){ if(e.getSource() == Button1){ x0 *= 1.5; y0 *= 1.5; count++; }else if(e.getSource() == Button2){ x0 /= 1.5; y0 /= 1.5; count--; } repaint(); } }
961 :
957 :2005/12/04(日) 15:51:32
>>959 ,960
一応こうすればできるんですが何か納得いきません
それにあたって拡大、縮小を繰り返しても
四角形の大きさが最初の大きさに戻るように工夫して作りなさい。
の部分を数学的な式で書き換える事はできるんでしょうか?
>>961 簡単だよ。
初期状態を変化させるのではなく、現在どの倍率で表示するか別の変数を用いるんだ。
表示させるときだけその倍率をかけてあげる。
>>957 手抜き…ちゃんと動くか確認してください
public void paint(Graphics g) {
g.setFont(font);
g.setColor(color);
/* これでいいのか!? */
x0 = (int) (80 * Math.pow(1.5, count));
y0 = (int) (100 * Math.pow(1.5, count));
g.fillRect(x, y, x0, y0);
/* デバッグ関数 */
g.fillRect(x1, y1, x2, y2);
g.drawString(String.valueOf(x0), 10, 200);
g.drawString(String.valueOf(y0), 10, 250);
g.drawString(String.valueOf(x2), 10, 300);
g.drawString(String.valueOf(y2), 10, 350);
g.drawString(String.valueOf(count), 10, 400);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == Button1) {
count++;
} else if (e.getSource() == Button2) {
count--;
}
repaint();
}
964 :
957 :2005/12/04(日) 16:03:04
>>963 できました。
そういうやり方もあるのか(´・ω・`)
>>962 ,963
回答ありがとうございます。
965 :
903 :2005/12/04(日) 17:12:17
966 :
デフォルトの名無しさん :2005/12/05(月) 01:05:08
【 課題 】 ノルウェーの国旗のjpeg画像を読み込み、青色の部分だけのRGB値を取得しなさい。 RGB値は配列に入れ、青の部分のピクセル数で割った値を表示しなさい。
967 :
デフォルトの名無しさん :2005/12/05(月) 03:12:06
白黒のjpeg画像を読み込んで、Point p = new Point();を使い、完全に白のところの座標を得るにはどうしたらいいですか?
969 :
875 :2005/12/05(月) 08:27:02
>968 有難うございます!! これはまだアプレットに改良してないのですね。 提出日が火曜の午前12時までなので、もしやっていただけるのならばお願い したいと思います。 もちろん、自分でも出来る限りの努力はしてみます。 宜しくお願いします。
古いな・・・
972 :
デフォルトの名無しさん :2005/12/05(月) 15:21:59
【 課題 】 以下の方針を応用し、左右に動く3つのオブジェクトが中央の領域で お互いに排他制御するようにしたアプレットのプログラムを作成せよ。 import javax.swing.*; import java.awt.*; class MovingObject { public int x; public int y; public int dx; public int dy; public int width; MovingObject(int _x, int _y, int _dx, int _dy, int __width) { x = _x; y = _y; dx = _dx; dy = _ dy; width = _width; } void show(Graphics g, Color clr) { g.setCOLOR(clr); g.fillOval(x, y, width, width); } } public class Wig extends JApplet implements Runnable { MovingObject redBall = new MovingObject(0, 20, 20, 0, 10); MovingObject blueBall = new MovingObject(30, 80, 20, 0, 20); Thread redThread = new Thread(this); Thread blueThread = new Thread(this); int interval = 1; public void start() { redThread = new Thread(this); blueThread = new Thread(this); redThread.start(); blueThread.start(); } public void run(); { MovingObject obj; if(Thread.currentThread() == redThread) obj = redBall; else obj = blueBall; while(true) { { try { Thread.sleep(3); } catch (InterruptedException e) { } } if(obj.x + obj.dx < 0 || getWidth() < obj.x + obj.dx + obj.width) obj.dx = -obj.dx; obj.x += obj.dx; repaint(); } } public void paint(Graphics g) { super.paint(g); redBall.show(g, Color.RED); blueBall.show(g, Color.BLUE); } } 【 期限 】 12月6日12時 【 Ver 】 指定なし 【 補足 】 丸投げ、お時間があるようでしたら、みなさまよろしくお願いします。
【課題】Ecpliseを用いGUI電卓を作る 【期限】12月7日 【補足】丸投げの状態であります、どなたかお時間あるようでしたら、 ご助力をお願い致します。
Ecplise...
976 :
972 :2005/12/05(月) 16:34:08
>>975 できあがってるとはどういうことでしょうか?初心者なのでさっぱりわかりません
>>972 で示したのは二つのオブジェクトなんですけど
>977 ページを表示できませんって出る。
980 :
972 :2005/12/05(月) 18:08:36
>>972 は多少間違っていたのでもう一度貼ります
import javax.swing.*;
import java.awt.*;
class MovingObject {
public int x;
public int y;
public int dx;
public int dy;
public int width;
MovingObject(int _x, int _y, int _dx, int _dy, int _width) {
x = _x;
y = _y;
dx = _dx;
dy = _ dy;
width = _width;
}
void show(Graphics g, Color clr) {
g.setCOLOR(clr);
g.fillOval(x, y, width, width);
}
}
public class Wig extends JApplet implements Runnable {
MovingObject redBall = new MovingObject(0, 20, 20, 0, 10);
MovingObject blueBall = new MovingObject(30, 80, 20, 0, 20);
Thread redThread = new Thread(this);
Thread blueThread = new Thread(this);
int interval = 1;
public void start() {
redThread = new Thread(this);
blueThread = new Thread(this);
981 :
972 :2005/12/05(月) 18:11:27
続き redThread.start(); blueThread.start(); } public void run() { MovingObject obj; if(Thread.currentThread() == redThread) obj = redBall; else obj = blueBall; while(true) { { try { Thread.sleep(3); } catch (InterruptedException e) { } } if(obj.x + obj.dx < 0 || getWidth() < obj.x + obj.dx + obj.width) obj.dx = -obj.dx; obj.x += obj.dx; repaint(); } } public void paint(Graphics g) { super.paint(g); redBall.show(g, Color.RED); blueBall.show(g, Color.BLUE); } }
ああ、3つか、作り直しだな
984 :
:2005/12/05(月) 19:24:00
986 :
943 :2005/12/05(月) 20:18:33
>955 確認しました。Windowsだとピクセル単位でずれるっぽい。 修正したソースを載せておきました。 DQPokerFrame#mouseClicked()を直しました。
989 :
デフォルトの名無しさん :2005/12/06(火) 17:34:09
>>808 さんのソースに注釈をつけていただけませんか?
よろしくおねがいいたします
990 :
デフォルトの名無しさん :2005/12/06(火) 17:45:11
【課題】Canvasクラスを使い、図形を描画するプログラムを作成。(図形は何でも良い。) その時、レイアウトを用いて、Canvasクラスの上部にLabelクラスを配置し、 描画した絵のタイトルを記述すること。 【期限】12月7日午前中 【補足】丸投げで申し訳ありません。どうかお願い致します。
991 :
987 :2005/12/06(火) 20:46:26
>>988 返信ありがとうございます。
これは972さんの回答と同じということでしょうか??
>>991 ダブルバッファしたものとしてないものがある訳だから兼用でOKだと思う
994 :
デフォルトの名無しさん :2005/12/06(火) 21:32:02
>>994 貼るときに壊したかな?
エラーメッセージ出してみて
>979 今ならつながる。 逆ポーランド記法の電卓でいいのかどうかは知らんが。
>>994 うちは動いてるよ。
もう一回こぴぺしてみて。
あと、ファイル名は Bmp2Jpeg.java にしないとだめだよ。
大文字小文字も一字一句違うとだめ。
>>994 あと、念のためだけど、 J2SDK 1.4.2 で確認した。
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。