質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

解決済

1回答

966閲覧

Graphicsクラスのメソッドを2つ入れたいのですが、どなたかやり方を教えてくれませんか

nakagen

総合スコア24

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2020/07/31 05:22

理想として、実行画面にGraphicsクラスのメソッドを2つ入れたいのですが、

①TextAreaの範囲がラベル以外の部分に指定されて、余白が作れない(そこに、Graphicsメソッドを使って、図を描きたい)

②Graphicsクラスのメソッドの作り方が分からない

の2点が、現在分からないところです。

どなたか、教えていただけますでしょうか。

説明が拙く、申し訳ありません。

package kadai; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Font; import java.awt.Frame; import java.awt.Graphics; import java.awt.Image; import java.awt.Label; import java.awt.TextArea; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class kadai4 extends Frame{ public static void main(String[]args) { kadai4 sm = new kadai4(); } public kadai4(){ super("課題4"); Label Ib = new Label("好きなことは何ですか");; Ib.setForeground(Color.red); Ib.setFont(new Font("Serif",Font.BOLD,50)); TextArea AB = new TextArea(); Label Ib1 = new Label("ありがとうございました");; Ib1.setForeground(Color.black); Ib1.setFont(new Font("Serif",Font.BOLD,25)); add(Ib,BorderLayout.NORTH); add(Ib1,BorderLayout.SOUTH); add(AB); addWindowListener(new kadai4WindowListener()); setSize(1000,700); setVisible(true); } public void paint(Graphics g) { g.drawLine(,,,); g.drawOval(,,,); } class kadai4WindowListener extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit(0); } } }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

TextArea を WEST に配置すれば CENTER が空いて、そこに描画できます。

diff

1- add(AB); 2+ add(AB, BorderLayout.WEST); 3 4 public void paint(Graphics g) { 5- g.drawLine(,,,); 6- g.drawOval(,,,); 7+ g.drawLine(500, 150, 900, 600); 8+ g.drawOval(500, 200, 300, 300); 9 }

BorderLayout にこだわらず、いろいろなレイアウトを調べて試してください。
FlowLayout や GridLayout などがあるので、Panel を重ねることによって、
様々なレイアウトを組み合わせて使用できます。

投稿2020/07/31 05:53

kazuma-s

総合スコア8224

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nakagen

2020/07/31 06:00

何とか出来ました! 聞きたいことがあるのですが、g.drawLineとg.drawOvalの右にある数字の意味を教えていただけますでしょうか??
kazuma-s

2020/07/31 06:06

「java drawLine」でググったことないのですか? 調べもせずに質問しないでください。
nakagen

2020/07/31 06:08

すみませんでした… 次から気を付けます…
nakagen

2020/07/31 06:12

今、調べたのですが、drawLineは、x1,y1がスタート地点で、x2,y2ゴール地点ということでいいのでしょうか…? また、drwaOvalはx1,y1がスタート地点で、x2,y2が最終的な幅と高さを示すという認識で大丈夫でしょうか…?
kazuma-s

2020/07/31 06:55

調べただけで試していないのですか? 値をいろいろ変えて、円を 5個くらい描いて、線を 10本ぐらい引いてみましたか? 四角を描く API もありますよ。円の中を塗りつぶすとか、色を変えるとか。 線の太さを変えるのはちょっと面倒。 なんで、何もやらないで質問だけするんですか?
nakagen

2020/08/01 17:00

drawLineとdrawOvalは実際に、実践してから質問しました。プログラミングの勉強法に関して、知識が浅くどのように質問したらよいか分かりませんでした。このようなことになり、申し訳ありません。
kazuma-s

2020/08/02 00:12

スタート地点の意味は何ですか? drawLine の説明にも、drawOvall の説明にもそんなことは書かれていないと思います。 例えば、drawOval では、 x - 描画される楕円の左上隅の x 座標。 y - 描画される楕円の左上隅の y 座標。 となっています。 あなたの言う「スタート地点」とは何ですか?
nakagen

2020/08/02 11:50

個人的な解釈ですが、例えば、パワーポイントで円を作るときに、クリックした場所から円を作り始めると言う意味でのスタート地点だということです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問