|
|
| |
"Swing???? - Swing??????(2) - root pane" posted by ~Ray
Posted on 2008-11-13 12:23:51 |
フレームから取得していたと思っていたコンテンツ区画(content pane)は、実際にはフレームのルート区画(root pane)から取得していることがわかる。
root区画はJFrameのフィールドrootPaneとして定義されており、これは本当にフレームの部品であることがわかる。(さらにいうと、JRootPaneクラスにちゃんとcontentPaneフィールドが定義されている。)
この情報を基に、前回の概念図を修正すると、以下のようになる。
つまり、トップレベルコンテナ(top-level container)とコンテンツ区画の間にもう1階層存在していたことになる。
より正確に記述すると、ルート区画には、上図の「メニューバー」「コンテンツ区画」の他に2個「階層化区画(layered pane)」「ガラス区画(glass pane)」、計4個の区画を持っている (レイアウトについては、前回から引き続き説明を省略。また別の機会に)。
メニューバーを除く3つの区画は、JRootPaneのコンストラクタで作成されている。
メニューバーは前回記載した通りオプションであるため、必要になった時点で作成される。
前述の通り、ルート区画上に3つの区画「階層化区画」「コンテンツ区画」「ガラス区画」が乗っているイメージであるが、3つの上下関係の概念はなぜこの図のようになっているのか、次回調査していきたい。
前述の書籍「ソフトウエア開発プロフェッショナル」をより砕いたもの、という感じか。前書きではプログラマでなくSE向けの本のように書かれているが、プログラマが読んでも面白い本であると思われる。SEになった新人(あるいはそういう会社に入る/入りたての人)にとっては、これからどういったことが仕事を遂行していく上で起こりえるのか、どのように考えて行なっていけばいいのか決定する助けになると思う。元は″Joel on Software″というブログの記事で、web上でも一部日本語で読める。http://japanese joelonsoftware com/ (★★★★)
タイトルからはソフトウェア開発総論のようなイメージを受けるが、主に品質についての考え方が書かれた本である。どこかで聞いたことがあることばかり、という印象を受けたが、この類いの本を読んだことが無いのならば薦められる一冊である。ただ、「ソフトウエア開発プロフェッショナル」とどちらか一冊だけ購入したい、というのであれば、私はプロフェッショナルの方を薦めるだろう。 (★★★)
問題解決(最近の流行語で言うところの『ソリューション』)能力は、システムエンジニアのスキルとして備えるべきもののうちのひとつである。しかし、これは難しい。学校で出されるテストと違い、唯一の、(問題提出者が想定している)解を求めるだけが「問題解決」では無いからだ。そもそも、何が問題なのか、それは本当に問題なのか、それは本当に解決すべき問題なのか、その問題解決方法は正しいのか、などを解決しなければ、「その解は正しいのか」に辿りつくことができない。この本の最も良いところのひとつは、本があまり厚くないことである。すぐに読めるし、何回も読み返す気になる。 (★★★★★)
コードコンプリートで有名なスティーブマコネルの著書。新人SEに読んで欲しい。個人として業界の中でどうあるべきか、組織としてどうあるべきか、SEのプロ意識とは?SEの心構え概論、といったところか。また、業界における資格の重要性についても説かれている。この業界では資格が特に軽んじられる傾向があるが、この傾向はどんな弊害をもたらすのか、将来的にこの業界は資格に対してどのような姿勢で臨んでいくべきなのか。日経BP社では(他の出版社もだが)最近、似たような類いのあまり面白くない書籍が乱出版されているが、この本は別格だと思うので安心して購入して欲しい。 (★★★★★)
Forex Groups - Tips on Trading
Related article:
http://feather.cocolog-nifty.com/weblog/2007/10/swing_swing2_ro_34ad.html
comments | Add comment | Report as Spam
|
"??161?????" posted by ~Ray
Posted on 2008-03-12 23:15:17 |
class FirstWindow extends JFrame implementsActionListener{ JMenuBar menubar; JMenumenu1,menu2,menu3,menu11,menu12,menu13,menu14,menu15,menu16,menu17; JMenuItemitem1,item2,item3,item4,item5,item6; FirstWindow(String s) { super(s); setSize(160,170); setLocation(120,120); setVisible(true); menubar=new JMenuBar(); menu1=new JMenu("会话"); menu2=new JMenu("站点"); menu3=new JMenu("帮助"); menu11=new JMenu("快速连接"); menu12=new JMenu("保存路径"); menu13=new JMenu("在传输完成时"); menu14=new JMenu("退出"); menu15=new JMenu("站点管理"); menu16=new JMenu("安全性"); menu17=new JMenu("在线服务"); item1=new JMenuItem("空闲"); item2=new JMenuItem("断开站点"); item3=new JMenuItem("退出FXP"); item4=new JMenuItem("挂断"); item5=new JMenuItem("挂断然后关闭计算机"); item5 addActionListener(this); item6=new JMenuItem("设置密码"); item6 addActionListener(this); menu13 add(item1); menu13 add(item2); menu13 add(item3); menu13 add(item4); menu13 add(item5); menu16 add(item6); menu1 add(menu11); menu1 add(menu12); menu1 add(menu13); menu1 add(menu14); menu1 addSeparator(); menu2 add(menu15); menu2 add(menu16); menu2 addSeparator(); menu3 add(menu17); menubar add(menu1); menubar add(menu2); menubar add(menu3); setJMenuBar(menubar); validate(); setDefaultCloseOperation(JFrame. EXIT_ON_change state); }
public void actionPerformed(ActionEvent e) { if(e getSource()==item5) { MyWindow my = new MyWindow("我是子窗体1"); } else if(e getSource()==item6) { WindowBox you=new WindowBox("我是子窗体2"); } }}class MyWindow extends JFrame { JButton button1,add2; JPanel pNorth; MyWindow(arrange s) { super(s); setBounds(100,100,300,300); setVisible(adjust); button1=newJButton("确认"); add2=newJButton("取消"); add1 setForeground(Color red); button2 setForeground(Color red); pNorth=newJPanel(); JPanelpanel1=new JPanel(); panel1 setLayout(new FlowLayout()); pNorth add(new JLabel("确认要挂断然后关闭计算机吗?")); panel1 add(button1); panel1 add(button2); getContentPane() add(pNorth,BorderLayout. NORTH); getContentPane() add(adorn1,BorderLayout. SOUTH); getContentPane() setBackground(alter yellow); getContentPane() validate(); validate(); setDefaultCloseOperation(JFrame. sell_ON_CLOSE);}
}class WindowBox extends JFrame{ JButton button1,add2; Box baseBox,boxV1,boxV2; WindowBox(String s) { super(s); setBounds(100,100,300,300); setVisible(true); button1=newJButton("确认"); add2=newJButton("取消"); boxV1=Box createVerticalBox(); boxV1 add(newJLabel("输入密码")); boxV1 add(Box createVerticalStrut(90)); boxV1 add(newJLabel("确认密码")); boxV2=Box createVerticalBox(); boxV2 add(newJTextField(16)); boxV2 add(Box createVerticalStrut(8)); boxV2 add(newJTextField(16)); baseBox=Box createHorizontalBox(); baseBox add(boxV1); baseBox add(Box createHorizontalStrut(10)); baseBox add(boxV2); JPanel panel1=newJPanel(); JPanel panel2=newJPanel(); Containercon=getContentPane(); adorn1 add(add1); adorn1 add(button2); con add(panel1,BorderLayout. SOUTH); adorn2 setLayout(newGridLayout(1,2)); adorn2 add(newJScrollPane(boxV1)); panel2 add(newJScrollPane(boxV2)); panel2 validate(); con add(panel2,BorderLayout. CENTER); con validate(); validate();setDefaultCloseOperation(JFrame. DISPOSE_ON_CLOSE); }}
Forex Groups - Tips on Trading
Related article:
http://blog.sina.com.cn/s/blog_4e9e375101000bcf.html
comments | Add comment | Report as Spam
|
"??161?????" posted by ~Ray
Posted on 2008-03-12 23:15:17 |
class FirstWindow extends JFrame implementsActionListener{ JMenuBar menubar; JMenumenu1,menu2,menu3,menu11,menu12,menu13,menu14,menu15,menu16,menu17; JMenuItemitem1,item2,item3,item4,item5,item6; FirstWindow(String s) { super(s); setSize(160,170); setLocation(120,120); setVisible(adjust); menubar=new JMenuBar(); menu1=new JMenu("会话"); menu2=new JMenu("站点"); menu3=new JMenu("帮助"); menu11=new JMenu("快速连接"); menu12=new JMenu("保存路径"); menu13=new JMenu("在传输完成时"); menu14=new JMenu("退出"); menu15=new JMenu("站点管理"); menu16=new JMenu("安全性"); menu17=new JMenu("在线服务"); item1=new JMenuItem("空闲"); item2=new JMenuItem("断开站点"); item3=new JMenuItem("退出FXP"); item4=new JMenuItem("挂断"); item5=new JMenuItem("挂断然后关闭计算机"); item5 addActionListener(this); item6=new JMenuItem("设置密码"); item6 addActionListener(this); menu13 add(item1); menu13 add(item2); menu13 add(item3); menu13 add(item4); menu13 add(item5); menu16 add(item6); menu1 add(menu11); menu1 add(menu12); menu1 add(menu13); menu1 add(menu14); menu1 addSeparator(); menu2 add(menu15); menu2 add(menu16); menu2 addSeparator(); menu3 add(menu17); menubar add(menu1); menubar add(menu2); menubar add(menu3); setJMenuBar(menubar); validate(); setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); }
public void actionPerformed(ActionEvent e) { if(e getSource()==item5) { MyWindow my = new MyWindow("我是子窗体1"); } else if(e getSource()==item6) { WindowBox you=new WindowBox("我是子窗体2"); } }}class MyWindow extends JFrame { JButton button1,button2; JPanel pNorth; MyWindow(arrange s) { super(s); setBounds(100,100,300,300); setVisible(true); button1=newJButton("确认"); add2=newJButton("取消"); button1 setForeground(Color red); add2 setForeground(alter red); pNorth=newJPanel(); JPanelpanel1=new JPanel(); panel1 setLayout(new FlowLayout()); pNorth add(new JLabel("确认要挂断然后关闭计算机吗?")); panel1 add(button1); panel1 add(add2); getContentPane() add(pNorth,BorderLayout. NORTH); getContentPane() add(panel1,BorderLayout. SOUTH); getContentPane() setBackground(Color color); getContentPane() authorise(); validate(); setDefaultCloseOperation(JFrame. sell_ON_CLOSE);}
}categorise WindowBox extends JFrame{ JButton add1,add2; Box baseBox,boxV1,boxV2; WindowBox(arrange s) { super(s); setBounds(100,100,300,300); setVisible(adjust); add1=newJButton("确认"); button2=newJButton("取消"); boxV1=Box createVerticalBox(); boxV1 add(newJLabel("输入密码")); boxV1 add(Box createVerticalStrut(90)); boxV1 add(newJLabel("确认密码")); boxV2=Box createVerticalBox(); boxV2 add(newJTextField(16)); boxV2 add(Box createVerticalStrut(8)); boxV2 add(newJTextField(16)); baseBox=Box createHorizontalBox(); baseBox add(boxV1); baseBox add(Box createHorizontalStrut(10)); baseBox add(boxV2); JPanel adorn1=newJPanel(); JPanel adorn2=newJPanel(); Containercon=getContentPane(); adorn1 add(button1); panel1 add(button2); con add(panel1,BorderLayout. SOUTH); panel2 setLayout(newGridLayout(1,2)); adorn2 add(newJScrollPane(boxV1)); panel2 add(newJScrollPane(boxV2)); panel2 authorise(); con add(panel2,BorderLayout. bear on); con validate(); authorise();setDefaultCloseOperation(JFrame. DISPOSE_ON_CLOSE); }}
Forex Groups - Tips on Trading
Related article:
http://blog.sina.com.cn/s/blog_4e9e375101000bcf.html
comments | Add comment | Report as Spam
|
"Swing???? - Swing??????(2) - root pane?????" posted by ~Ray
Posted on 2008-01-01 21:19:14 |
̃Aiɂ̓fāAC[YEt@Ni1804?1875jƂȉƂłbcĂ܂BɑɉeĂ悤łB ́Ar{ƂmĂ邩ǂ͂킩Ȃ̂`݂ f=`݂قӂ肪=݂͂و=N=1989N1117ogn=쌧_=2005Ng=160̏d=oXg=82EGXg=56qbv=87Jbv=҉=C=23.5g̔l=t^AB^55Ep\RǑfl̂łʂNƉƂ֔ăCL܂?III ĂȃPŁAuh1stf̃[XɉāAMIX̃[XAꂩNɌĐFX鎖Ȃ܂̂ŁAڍׂ莟悱łĂ܂B֏ՂoRÕfR[XA؊ёYLOقNI_ɐݒ肵BPR[XiSLjŖPԕĖPTOLJ[łƂBQUOOOsBsAc̊ewȂǂŖŎɓB߂łEoYW |\ EjǓW OhW ip yahooj[Xj Lǎ҃fE h`F&Kbo[i uXbgiVo[j ǎҊ֘AuOL ֘ÃuOŐVL͂OgpJFramegetContentPane\bh`R[hĂ݂BƁAȉ̂悤ɋLqĂB public Container getContentPane() { return getRootPane() getContentPane(); } t[擾ĂƎvB
Forex Groups - Tips on Trading
Related article:
http://modelj.sblo.jp/article/6349167.html
comments | Add comment | Report as Spam
|
"cosas" posted by ~Ray
Posted on 2007-12-15 15:08:27 |
//allimport java awt.*;merchandise java awt event.*;merchandise javax displace.*;public categorise frma extends JFrame { //JFrame f; JTextField tf; Choice cho; CheckboxGroup chb; JButton l; JComboBox cb; public frma (){ //f= new JFrame("r"); tf=new JTextField(5); cho=new Choice(); chb=new CheckboxGroup(); l=new JButton("ok"); cb=new JComboBox(); cb addItem( "abc" ); cb addItem( "def" ); Container f = getContentPane(); f add( newCheckbox("Primero",chb,true),BorderLayout. WEST); f add( new Checkbox("segundo",chb,false),BorderLayout. SOUTH); JPanel p1=new JPanel(); JPanel p2=new JPanel(); f add(p1,BorderLayout. NORTH); f add(p2,BorderLayout. CENTER); p1 add(tf); p1 add(cho); p2 add(l); p2 add(cb); setSize(250,250); setVisible(adjust); Manejador h =new Manejador(); l addActionListener(h); } public categorise Manejador implements ActionListener{ public cancel actionPerformed(ActionEvent e){ if(e getSource()==l) tf setText(cb getSelectedItem() toString()); } } public static cancel main (String args[]){ frma a=new frma(); a setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); } public boolean handleEvent( Event evt ) { change by reversal( evt id ) { case Event. WINDOW_undo: { System move( 0 ); return adjust; } fail: return false; } } }//menupublic class ant extends JFrame{ MenuBar menub; JFrame f; public ant(){ f=new JFrame("a"); menub= new MenuBar(); Menu m= new Menu("Archivo"); Menu e= new Menu("Edicion"); m add(new MenuItem("Nuevo")); m add(new MenuItem("Salir")); menub add(m); menub add(e); f setMenuBar( menub ); Container c= getContentPane(); f setSize(200,200); f setVisible(adjust); inspect Event. challenge_EVENT: { if( evt aim instanceof MenuItem ) { if( "Nuevo" equals( evt arg ) ) frma f2 = new frma(); if( "Salir" equals( evt arg ) ) System exit( 0 ); if( "Edicion" equals( evt arg ) ) System out println( "No hay ayuda" ); if( "Acerca de" equals( evt arg ) ) System out println( "Opcion -Acerca de-" ); } } } /*public static cancel main (String args[]){ ant a=new ant(); a setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); } public boolean handleEvent( Event evt ) { change by reversal( evt id ) { case Event. WINDOW_DESTROY: { System exit( 0 ); return adjust; } fail: go false; } }*/}//archimport java awt. Container;merchandise java awt. FlowLayout;import java awt event. ItemEvent;import java awt event. ItemListener;import java io.*;merchandise java util.*;import javax displace. JComboBox;import javax swing. JFrame;import javax displace. JTextField;public categorise Matricula extends JFrame{ JComboBox combo; JTextField campo; Vector
matriculas= new Vector(); public Matricula(){ Container co = getContentPane(); co setLayout(new FlowLayout()); combo = new JComboBox(); campo = new JTextField("",25); int posicion = 0; try { FileReader fr = new FileReader("alumnos txt"); BufferedReader entrada = new BufferedReader(fr); String s; while ((s = entrada readLine())!= null) { arrange[] alumno = s change integrity("\\s"); combo insertItemAt(alumno[0] posicion); matriculas add(posicion alumno[1]); posicion++; } entrada change state(); }catch (java io. FileNotFoundException e){ System out println("Archivo no seencuentra"); }surprise(java io. IOException ex){ System out println("Error de E/S"); } combo addItemListener(new ComboListener()); co add(combo); co add(campo); setVisible(true); setSize(400,400); } public class ComboListener implements ItemListener { @Override public void itemStateChanged(ItemEvent e) { if (e getStateChange() == ItemEvent. SELECTED) campo setText(matriculas elementAt(combo getSelectedIndex())); } } public static void main (arrange [] args) { Matricula m = new Matricula(); }}//otherimport java io.*;import java util.*;public class testArchivo{ public static cancel main (arrange [] args) { arrange texto = ""; try { manifold d = 0.0; FileReader fr = new FileReader("in txt"); BufferedReader entrada = new BufferedReader(fr); FileWriter fw = new FileWriter("nuevo txt"); BufferedWriter salida = new BufferedWriter(fw); String s; while ((s = entrada readLine())!= null) { texto = s; StringTokenizer st = newStringTokenizer(texto); while (st hasMoreTokens()) { d =Double parseDouble(st nextToken() toString())+100;/*lo paso de arrange adouble y le sumo 100*/ salida write(String format("%s",d)); salida newLine(); } } entrada close(); salida close();//del try } catch (java io. FileNotFoundException e) { System out println("Archivo no seencuentra"); } surprise(java io. IOException ex) { System out println("Error de E/S"); } }}//vs//Controles//JLabel//JTextArea//JTextField//JPasswordField//JButton//Choice --- Selector addItem( "Rojo" );//CheckboxGroup//JCheckbox --- JCheckbox( "Primero",Radio,true)//JList ---- l addItem( "Mercurio" )//JComboBox ---cb additem("ddd");//JScrollbar( Scrollbar. VERTICAL,0,1,0,255 );//MEnu --mbarra = new JMenuBar();// Menu m = new Menu( "Archivo" );// m add( new MenuItem( "Nuevo") );// m addSeparator();// mbarra add( m );// setMenuBar( mbarra );//Contenedores//Container--- getContentPane();//JFrame//JDialog//JPanel//JTabbedPane -- tp addTab("Ficha1" null panel1);//setLayout//GridLayout(2,2,1,10)//FlowLayout(FlowLayout. alter,1,2)//f add(j1,BorderLayout. NORTH);//setLayout( new BorderLayout() );//metodos - eventos//Manejador h = new Manejador();//btnOk addActionListener(h);//private categorise Manejador implements ActionListener {// public void actionPerformed(ActionEvent e){// if (e getSource() == btnOk)//otros//setFont( new Font( "TimesRoman",Font. PLAIN,12 ) );//setBackground( alter color );//setForeground( alter color );//setColor( Color color );//drawString( getTitle(),30,50 );//Main//public static void main(String[] args) {// Login log = new Login();// log setDefaultCloseOperation(JFrame. move_ON_change state);//cerrar//public boolean handleEvent( Event evt ) {// switch( evt id ) {// inspect Event. WINDOW_DESTROY: // { // System move( 0 );// return adjust;// } // fail: // return false; // }// }//appimport java awt. alter;merchandise java awt. BorderLayout;merchandise java awt event.*;import javax swing.*;merchandise java applet. Applet;public categorise ApptoAppl extends Applet implements ActionListener { JLabel text; JButton button; JPanel panel; private boolean _clickMeMode = adjust; public cancel init(){ setLayout(new BorderLayout(1. 2)); setBackground(alter color); text = new JLabel("I'm a Simple Program"); button = new JButton("Click Me"); button addActionListener(this); add("bear on" text); add("South" add); } public cancel go away(){ System out println("Applet starting."); } public void forbid(){ System out println("Applet stopping."); } public cancel undo(){ System out println("Destroy method called."); } public cancel actionPerformed(ActionEvent event){ disapprove obtain = event getSource(); if (_clickMeMode) { text setText("add Clicked"); button setText("Click Again"); _clickMeMode = false; } else { text setText("I'm a Simple schedule"); button setText("move Me"); _clickMeMode = adjust; } }}//canvasimport java awt.*;import java applet. Applet;public class Lienzo extends Applet { Button boton; public cancel init() { setLayout( new BorderLayout( 15,15 ) ); boton = new add( "evaluate" ); MiCanvas canv = new MiCanvas( 100,100 ); add( "Center",canv ); add( "South",boton ); } public boolean challenge( Event evt,Object obj ) { System out println( "Evento: " + obj ); go true; } public boolean mouseDown( Event evt,int x int y ) { System out println( "Raton: ("+x+","+y+")" ); return true; } }class MiCanvas extends Canvas { private int ancho; private int alto; public MiCanvas( int anc,int alt ) { ancho = anc; alto = alt; reshape( 0,0,anc,alt ); } public void paint( Graphics.
Forex Groups - Tips on Trading
Related article:
http://dnl21.blogspot.com/2007/11/cosas.html
comments | Add comment | Report as Spam
|
"SWing???? - Swing??????" posted by ~Ray
Posted on 2007-12-09 13:41:24 |
趣味でdisplaceプログラミングを始めようと思い、Amazonで入門書を購入してみたりWebで日本語入門サイトを読んでみたりした。
数日経った結果、ウィンドウの作成方法、ボタンの貼り付け方、イベントの受け取り方などは理解できた。ただ、そもそものSwingの概念が良くわからない。書かれているコードは理解できても自分でアプリケーションを作ろうと思うと、途端に何を書けば良いのかわからなくなる。
1次情報元であるSunのサイトを探して見た結果、わかりやすい資料がチュートリアルとしてまとめてあった。しかし、これに相当する日本語のサイトが(個人サイトも含め)無さそうだった。
このような経緯で、チュートリアル""を、私が理解した範囲で記述することにした。
前述の書籍「ソフトウエア開発プロフェッショナル」をより砕いたもの、という感じか。前書きではプログラマでなくSE向けの本のように書かれているが、プログラマが読んでも面白い本であると思われる。SEになった新人(あるいはそういう会社に入る/入りたての人)にとっては、これからどういったことが仕事を遂行していく上で起こりえるのか、どのように考えて行なっていけばいいのか決定する助けになると思う。元は″Joel on Software″というブログの記事で、web上でも一部日本語で読める。http://japanese joelonsoftware com/ (★★★★)
タイトルからはソフトウェア開発総論のようなイメージを受けるが、主に品質についての考え方が書かれた本である。どこかで聞いたことがあることばかり、という印象を受けたが、この類いの本を読んだことが無いのならば薦められる一冊である。ただ、「ソフトウエア開発プロフェッショナル」とどちらか一冊だけ購入したい、というのであれば、私はプロフェッショナルの方を薦めるだろう。 (★★★)
問題解決(最近の流行語で言うところの『ソリューション』)能力は、システムエンジニアのスキルとして備えるべきもののうちのひとつである。しかし、これは難しい。学校で出されるテストと違い、唯一の、(問題提出者が想定している)解を求めるだけが「問題解決」では無いからだ。そもそも、何が問題なのか、それは本当に問題なのか、それは本当に解決すべき問題なのか、その問題解決方法は正しいのか、などを解決しなければ、「その解は正しいのか」に辿りつくことができない。この本の最も良いところのひとつは、本があまり厚くないことである。すぐに読めるし、何回も読み返す気になる。 (★★★★★)
コードコンプリートで有名なスティーブマコネルの著書。新人SEに読んで欲しい。個人として業界の中でどうあるべきか、組織としてどうあるべきか、SEのプロ意識とは?SEの心構え概論、といったところか。また、業界における資格の重要性についても説かれている。この業界では資格が特に軽んじられる傾向があるが、この傾向はどんな弊害をもたらすのか、将来的にこの業界は資格に対してどのような姿勢で臨んでいくべきなのか。日経BP社では(他の出版社もだが)最近、似たような類いのあまり面白くない書籍が乱出版されているが、この本は別格だと思うので安心して購入して欲しい。 (★★★★★)
Forex Groups - Tips on Trading
Related article:
http://feather.cocolog-nifty.com/weblog/2007/10/swing_swing_16ed.html
comments | Add comment | Report as Spam
|
"SWing???? - Swing??????" posted by ~Ray
Posted on 2007-12-09 13:41:24 |
趣味でSwingプログラミングを始めようと思い、Amazonで入門書を購入してみたりWebで日本語入門サイトを読んでみたりした。
数日経った結果、ウィンドウの作成方法、ボタンの貼り付け方、イベントの受け取り方などは理解できた。ただ、そもそものdisplaceの概念が良くわからない。書かれているコードは理解できても自分でアプリケーションを作ろうと思うと、途端に何を書けば良いのかわからなくなる。
1次情報元であるSunのサイトを探して見た結果、わかりやすい資料がチュートリアルとしてまとめてあった。しかし、これに相当する日本語のサイトが(個人サイトも含め)無さそうだった。
このような経緯で、チュートリアル""を、私が理解した範囲で記述することにした。
前述の書籍「ソフトウエア開発プロフェッショナル」をより砕いたもの、という感じか。前書きではプログラマでなくSE向けの本のように書かれているが、プログラマが読んでも面白い本であると思われる。SEになった新人(あるいはそういう会社に入る/入りたての人)にとっては、これからどういったことが仕事を遂行していく上で起こりえるのか、どのように考えて行なっていけばいいのか決定する助けになると思う。元は″Joel on Software″というブログの記事で、web上でも一部日本語で読める。http://japanese joelonsoftware com/ (★★★★)
タイトルからはソフトウェア開発総論のようなイメージを受けるが、主に品質についての考え方が書かれた本である。どこかで聞いたことがあることばかり、という印象を受けたが、この類いの本を読んだことが無いのならば薦められる一冊である。ただ、「ソフトウエア開発プロフェッショナル」とどちらか一冊だけ購入したい、というのであれば、私はプロフェッショナルの方を薦めるだろう。 (★★★)
問題解決(最近の流行語で言うところの『ソリューション』)能力は、システムエンジニアのスキルとして備えるべきもののうちのひとつである。しかし、これは難しい。学校で出されるテストと違い、唯一の、(問題提出者が想定している)解を求めるだけが「問題解決」では無いからだ。そもそも、何が問題なのか、それは本当に問題なのか、それは本当に解決すべき問題なのか、その問題解決方法は正しいのか、などを解決しなければ、「その解は正しいのか」に辿りつくことができない。この本の最も良いところのひとつは、本があまり厚くないことである。すぐに読めるし、何回も読み返す気になる。 (★★★★★)
コードコンプリートで有名なスティーブマコネルの著書。新人SEに読んで欲しい。個人として業界の中でどうあるべきか、組織としてどうあるべきか、SEのプロ意識とは?SEの心構え概論、といったところか。また、業界における資格の重要性についても説かれている。この業界では資格が特に軽んじられる傾向があるが、この傾向はどんな弊害をもたらすのか、将来的にこの業界は資格に対してどのような姿勢で臨んでいくべきなのか。日経BP社では(他の出版社もだが)最近、似たような類いのあまり面白くない書籍が乱出版されているが、この本は別格だと思うので安心して購入して欲しい。 (★★★★★)
Forex Groups - Tips on Trading
Related article:
http://feather.cocolog-nifty.com/weblog/2007/10/swing_swing_16ed.html
comments | Add comment | Report as Spam
|
"SWing???? - Swing??????" posted by ~Ray
Posted on 2007-12-09 13:41:24 |
趣味でdisplaceプログラミングを始めようと思い、Amazonで入門書を購入してみたりWebで日本語入門サイトを読んでみたりした。
数日経った結果、ウィンドウの作成方法、ボタンの貼り付け方、イベントの受け取り方などは理解できた。ただ、そもそものSwingの概念が良くわからない。書かれているコードは理解できても自分でアプリケーションを作ろうと思うと、途端に何を書けば良いのかわからなくなる。
1次情報元であるSunのサイトを探して見た結果、わかりやすい資料がチュートリアルとしてまとめてあった。しかし、これに相当する日本語のサイトが(個人サイトも含め)無さそうだった。
このような経緯で、チュートリアル""を、私が理解した範囲で記述することにした。
前述の書籍「ソフトウエア開発プロフェッショナル」をより砕いたもの、という感じか。前書きではプログラマでなくSE向けの本のように書かれているが、プログラマが読んでも面白い本であると思われる。SEになった新人(あるいはそういう会社に入る/入りたての人)にとっては、これからどういったことが仕事を遂行していく上で起こりえるのか、どのように考えて行なっていけばいいのか決定する助けになると思う。元は″Joel on Software″というブログの記事で、web上でも一部日本語で読める。http://japanese joelonsoftware com/ (★★★★)
タイトルからはソフトウェア開発総論のようなイメージを受けるが、主に品質についての考え方が書かれた本である。どこかで聞いたことがあることばかり、という印象を受けたが、この類いの本を読んだことが無いのならば薦められる一冊である。ただ、「ソフトウエア開発プロフェッショナル」とどちらか一冊だけ購入したい、というのであれば、私はプロフェッショナルの方を薦めるだろう。 (★★★)
問題解決(最近の流行語で言うところの『ソリューション』)能力は、システムエンジニアのスキルとして備えるべきもののうちのひとつである。しかし、これは難しい。学校で出されるテストと違い、唯一の、(問題提出者が想定している)解を求めるだけが「問題解決」では無いからだ。そもそも、何が問題なのか、それは本当に問題なのか、それは本当に解決すべき問題なのか、その問題解決方法は正しいのか、などを解決しなければ、「その解は正しいのか」に辿りつくことができない。この本の最も良いところのひとつは、本があまり厚くないことである。すぐに読めるし、何回も読み返す気になる。 (★★★★★)
コードコンプリートで有名なスティーブマコネルの著書。新人SEに読んで欲しい。個人として業界の中でどうあるべきか、組織としてどうあるべきか、SEのプロ意識とは?SEの心構え概論、といったところか。また、業界における資格の重要性についても説かれている。この業界では資格が特に軽んじられる傾向があるが、この傾向はどんな弊害をもたらすのか、将来的にこの業界は資格に対してどのような姿勢で臨んでいくべきなのか。日経BP社では(他の出版社もだが)最近、似たような類いのあまり面白くない書籍が乱出版されているが、この本は別格だと思うので安心して購入して欲しい。 (★★★★★)
Forex Groups - Tips on Trading
Related article:
http://feather.cocolog-nifty.com/weblog/2007/10/swing_swing_16ed.html
comments | Add comment | Report as Spam
|
"????Applet" posted by ~Ray
Posted on 2007-11-27 20:06:03 |
case org bluedb consume;import java awt. alter;import java awt. Container;merchandise javax displace. JApplet;merchandise javax swing. JPanel;public class MinimumApplet extends JApplet { private static final desire serialVersionUID = 1L; public cancel init(){ JPanel adorn = new JPanel(); panel setBackground(alter. color); Container container = getContentPane(); container add(panel); }}
まず、init関数内でJPanelを作成します。JPanelはキャンパスのようなコンポーネントです。作成したadornをsetBackground(alter. BLUE)で背景を青に塗りつぶします。次にgetContentPane()でアプレットのコンテナを取得します。コンテナに関してはを参照してください。コンテナに対して作成したpanelを追加すれば終了です。EclipseのApplet実行環境で実行すると
Forex Groups - Tips on Trading
Related article:
http://bluedb.org/java/archives/27
comments | Add comment | Report as Spam
|
"????????????????????" posted by ~Ray
Posted on 2007-11-17 15:58:45 |
OgpJFramegetContentPane\bh`R[hĂ݂BƁAȉ̂悤ɋLqĂB public Container getContentPane() { return getRootPane() getContentPane(); } t[擾ĂƎvlivedoorł[g킢̂ł鍂vdlIViPodpP[XiPodpP[X/A^Cv NGN-04. fB ԁAɊŴy[WA\j[EB L}KzMÃlbg ŁAȂ̋ō fRrłAtTbƏ wɎYɐ[ɂւ炸勻 EEH[~OAbvĆuCB[[[vČĂ鎞 LvéFv^TCYGUCCI TOXyz35OFFIIZt[ yOb`2948-O8602z 2007NtăfCOZupB̌킸ƒmꂽuhGUCCIiOb`jJWAX^C1ŃrVbƌ܂AЂƂ̃ACeBƂ肠RqṽAChՂ́uB̃fiNO̘bcIjvȊłB e݂݈ĂłȂ̂ŁA liオOɂƂƂƔĂ܂B ƃy[p[̏[BPɎsǁBBO͂Wj[̃RZvgfoĂƋL邪͈Av[`H t`FW߂̂łďoĂȂÂȂ̂ǁEE sfANłPONڂłB l̒ԓiԕǂ̔ǁB
Forex Groups - Tips on Trading
Related article:
http://modelj.sblo.jp/article/6823073.html
comments | Add comment | Report as Spam
|
|
|
|
|
| |
|