2012-03-02 24 views
1

Jframeにコンテナを追加するにはどうすればいいですか?君たちは私がこれは私が希望動作するように得るのを助けることができればjframeにコンテナを追加する

import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
import java.util.Calendar; 
public class CopyOftheclock { 
public static void main(String[] args) { 
    JFrame clock = new TextClockWindow(); 
    clock.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    clock.setVisible(true); 
    } 
} 


@SuppressWarnings("serial") 
class TextClockWindow extends JFrame { 
private JTextField timeField; 
    public TextClockWindow() { 
    timeField = new JTextField(7); 
    timeField.setFont(new Font("sansserif", Font.PLAIN, 48)); 

    Container content = this.getContentPane(); 
    content.setLayout(new FlowLayout()); 
    content.add(timeField); 

    this.setTitle("Norway"); 
    this.pack(); 
    javax.swing.Timer t = new javax.swing.Timer(1000, 
      new ActionListener() { 
       public void actionPerformed(ActionEvent e) { 
        String a = ""; 
        Calendar now = Calendar.getInstance(); 
        int h = now.get(Calendar.HOUR_OF_DAY); 
        if (h==24) 
        { 
         h=8; 
         a = "A.M"; 
        } 
        if (h==1) 
        { 
         h=9; 
         a = "A.M"; 
        } 
        if (h==2) 
        { 
         h=10; 
         a = "A.M"; 
        } 
        if (h==3) 
        { 
         h=11; 
         a = "A.M"; 
        } 
        if (h==4) 
        { 
         h=12; 
         a = "P.M"; 
        } 
        if (h==5) 
        { 
         h=1; 
         a = "P.M"; 
        } 
        if (h==6) 
        { 
         h=2; 
         a = "P.M"; 
        } 
        if (h==7) 
        { 
         h=3; 
         a = "P.M"; 
        } 
        if (h==8) 
        { 
         h=4; 
         a = "P.M"; 
        } 
        if (h==9) 
        { 
         h=5; 
         a = "P.M"; 
        } 
        if (h==10) 
        { 
         h=6; 
         a = "P.M"; 
        } 
        if (h==11) 
        { 
         h=7; 
         a = "P.M"; 
        } 
        if (h==12) 
        { 
         h=8; 
         a = "P.M"; 
        } 
        if (h==13) 
        { 
         h=9; 
         a = "P.M"; 
        } 
        if (h==14) 
        { 
         h=10; 
         a = "P.M"; 
        } 
        if (h==15) 
        { 
         h=11; 
         a = "P.M"; 
        } 
        if (h==16) 
        { 
         h=12; 
         a = "P.M"; 
        } 
        if (h==17) 
        { 
         h=1; 
         a = "A.M"; 
        } 
        if (h==18) 
        { 
         h=2; 
         a = "A.M"; 
        } 
        if (h==19) 
        { 
         h=3; 
         a = "A.M"; 
        } 
        if (h==20) 
        { 
         h=4; 
         a = "A.M"; 
        } 
        if (h==21) 
        { 
         h=5; 
         a = "A.M"; 
        } 
        if (h==22) 
        { 
         h=6; 
         a = "A.M"; 
        } 
        if (h==23) 
        { 
         h=7; 
         a = "A.M"; 
        } 
        int m = now.get(Calendar.MINUTE); 
        int s = now.get(Calendar.SECOND); 
        timeField.setText("" + h + ":" + m + ":" + s + " " + a); 
       } 

      }); 
    t.start(); 
    } 
} 

:HERESにコードの私のラインは、私はHERESに、同じJFrameの側面の他のクロックが含まれている1つのウィンドウで時計を作るために私のコードをしたいと思います心から感謝する!

+0

私は何をしようとしているのですか?http://s1173.photobucket.com/albums/r597/jackiechanwins/?action=view¤t=clock.jpg –

+0

'add()'メソッドを使用していますか? –

+0

私はそれをコードにどこに入れますか?各容器はそれに異なる数を持つつもりです –

答えて

5

1)編集不可能なテキストを表示するには、JTextFieldではなくを使用します。

2)少ないコードでは、SimpleDateFormatの方法を使用してください。

3)適切なLayoutManagerを使用してください。あなたの場合(多分)GridLayoutはすべてJComponentに同じDimensionを画面に表示させるでしょう。

4)main public static void main(String[] args) {のすべてのGUI関連コードは、invokeLater()にラップする必要があります。 Initial Threadsの詳細。

5)残りの部分はおそらくthis thread could be usefulです。

関連する問題