teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

codeの追加をしました

2019/10/27 01:14

投稿

TNKa
TNKa

スコア5

title CHANGED
File without changes
body CHANGED
@@ -1,4 +1,79 @@
1
+ ```
2
+ import java.awt.BorderLayout;
3
+ import java.awt.Container;
4
+ import java.awt.event.ActionEvent;
5
+ import java.awt.event.ActionListener;
6
+ import java.net.InetAddress;
7
+ import java.net.UnknownHostException;
8
+
9
+ import javax.swing.JFrame;
10
+ import javax.swing.JScrollPane;
11
+ import javax.swing.JTextArea;
12
+ import javax.swing.JTextField;
13
+
14
+ /* IPアドレス⇔ホスト名の相互変換を行うGUIアプリケーション */
15
+ public class MyJFrame1
16
+ extends JFrame implements ActionListener{
17
+ private JTextField tf; // IPアドレスまたはホスト名の入力欄
18
+ private JTextArea ta; // 変換結果の表示
19
+
20
+ public static void main(String[] args) {
21
+ // MyJFrame1オブジェクトを生成する
22
+ new MyJFrame1();
23
+ }
24
+ public void actionPerformed(ActionEvent e){
25
+ String text = tf.getText();
26
+ try {
27
+ // 入力されたIPアドレスまたはホスト名から
28
+ // InetAddressオブジェクトを得て,そこから
29
+ // ホスト名とIPアドレスとを取得する
30
+ InetAddress ia = InetAddress.getByName(text);
31
+ ta.append(ia.getHostName()+"\n");
32
+ ta.append(ia.getHostAddress()+"\n");
33
+ } catch (UnknownHostException e1) {
34
+ // InetAddressオブジェクトの生成に失敗したら
35
+ // 原因を表示する
36
+ //e1.printStackTrace();
37
+ ta.append(e1.toString());
38
+ }
39
+ }
40
+ MyJFrame1(){
41
+ // GUI部品の生成と配置
42
+ Container cnt = getContentPane();
43
+
44
+ tf = new JTextField();
45
+ cnt.add(tf,BorderLayout.NORTH);
46
+ tf.addActionListener(this);
47
+
48
+ ta = new JTextArea("IP address かホスト名を入れてください\n");
49
+ JScrollPane sp = new JScrollPane(ta);
50
+ cnt.add(sp,BorderLayout.CENTER);
51
+
52
+ // 窓の表示(タイトルバーにlocalhostの情報を表示する)
53
+ setTitle(getLocalHostTitle());
54
+ setSize(300,200);
55
+ setDefaultCloseOperation(EXIT_ON_CLOSE);
56
+ setVisible(true);
57
+ }
58
+ private String getLocalHostTitle(){
59
+ // localhostのホスト名とIPアドレスをつなげた文字列を返す
60
+ String titleStr = "";
61
+ try {
62
+ // localhostに対するInetAddressオブジェクトを
63
+ // 得て,そこからホスト名とIPアドレスを取得する
64
+ InetAddress lh = InetAddress.getLocalHost();
65
+ titleStr += lh.getHostName();
66
+ titleStr += "("+lh.getHostAddress()+")";
67
+ } catch (UnknownHostException e) {
68
+ // InetAddressオブジェクトの生成に失敗したら
69
+ // 原因を表示する
70
+ e.printStackTrace();
71
+ }
72
+ return titleStr;
73
+ }
74
+ }
75
+
1
- ### 実現したいこと
76
+ ```### 実現したいこと
2
77
  ・テキストフィールドにIPアドレスまたはホスト名を入力し、その得られたオブジェクト(InetAddress)のIP アドレス /ホスト名 / スコープをテキストエリアに表示させ窓を閉じたら実行を終了するプログラムを作りたいのですがわからなくなったので教えていただきたいです。
3
78
  ###とりあえずできたこと(変えてもらっても大丈夫です)
4
79