рдкрд░рд┐рдЪрдп
рдРрд╕рд╛ рд╣реБрдЖ рдХрд┐ рдПрдХ рдбрд┐рдЬрд╛рдЗрдирд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдореБрдЭреЗ рд▓реЗрдЦрди рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рдХрд┐рд╕реА рднреА рд╢реБрд░реБрдЖрдд рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рд░рдЪрдирд╛рддреНрдордХрддрд╛ рдХреЗ рд▓рд┐рдП рдЬрдЧрд╣ рдЪрд╛рд╣рд┐рдПред рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдореИрдВрдиреЗ рдЬрд╛рд╡рд╛ рдЬреИрд╕реЗ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдЖрдБрдЦреЗрдВ рд░рдЦреАрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рд╣рдореЗрд╢рд╛ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рд╕рдкрдирд╛ рджреЗрдЦрд╛ рдерд╛ред рдФрд░ рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдореИрдВрдиреЗ рдЬрд╛рд╡рд╛ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рд╢рд╛рдВрдд рдШрдЯрдХ рдХреЛ JTable рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рд╕реНрдЯрд░ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдареАрдХ рд╣реИ, рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ рдХрд┐ рдореБрдЭреЗ рд╣рдореЗрд╢рд╛ рдЕрдкрдиреЗ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд╕рдВрдж рдерд╛ред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ рдПрдХ рдореБрд╢реНрдХрд┐рд▓ рдХрд╛рдо рдирд╣реАрдВ рдмрдирд╛рдпрд╛ - рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрдЪрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╕рд╛рде рд╣реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдХреЗ рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдирдкреБрдЯ рдХреЛ рдЯреНрд░реИрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рддрддреНрд╡реЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдХреЗ рдореЗрд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХреЛ рд╕рд░рд▓ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рдореИрдВ рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╕рдордп рдЪрд░рдг-рджрд░-рдЪрд░рдг рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рджреНрд╡рд╛рд░рд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡рдХ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд╕реНрдерд┐рд░ рдХреЛрдб рдХреЗ рддреИрдпрд╛рд░ рдЯреБрдХрдбрд╝реЛрдВ рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдереА ... рд▓реЗрдХрд┐рди ... рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЦреЛрдЬ рдХреЗ рдмрд╛рдж, рдпрд╣ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░, рдЕрдзрд┐рдХ рдпрд╛ рдмреЗрд╣рддрд░ рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрд░реЛрдд рд╣реИрдВред
рдирд╣реАрдВ, рдирд╣реАрдВ, рдореИрдВрдиреЗ рдЖрдкрдХреЛ
рдпрд╣рд╛рдВ рдирд╣реАрдВ рднреЗрдЬрд╛ (javatalks.ru рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдЙрджреНрдзрд░рдг рдФрд░ рдЕрдиреНрдп - "рдмреЗрд╡рдХреВрдл рд╕рд╡рд╛рд▓ рдкреВрдЫрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ,
рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ ...")ред
рдФрд░
рдпрд╣рд╛рдБ ред (рдЯреЗрдмрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ - рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓)
рдпрд╛
рдпрд╣рд╛рдБ (рд╕реНрд╡рд┐рдВрдЧ рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░: рдЙрджрд╛рд╣рд░рдг)ред
рдпрд╛ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдкрд░
рдорд╛рдирдХ рдорджрдж рдореЗрдВрд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдХрд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╕рд░рд▓ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рд╡рд╣рд╛рдВ рджреЗрдЦрд╛ рдФрд░ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдХрд┐ рдЬрд╛рд╡рд╛ рдбреЙрдХ рдереЛрдбрд╝рд╛ рдкреБрд░рд╛рдирд╛ рд╣реИ, рджреЛрдиреЛрдВ рдмреЛрдз рдореЗрдВ рдФрд░ рд╕рдордЭрджрд╛рд░реА рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдб рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ (рдореИрдВрдиреЗ рдЬрд╛рд╡рд╛ рд╕рдВрд╕реНрдХрд░рдг 7.01 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛)ред рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА, рдЗрди рд╕рдВрджрд░реНрдн рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЛ рдкрдврд╝реЗ рдмрд┐рдирд╛, рдЖрдк рдЬрд╛рд╡рд╛ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд╕рд╛рд░, рддрд░реНрдХ рдФрд░ рдордиреЛрд╡рд┐рдЬреНрдЮрд╛рди рдХреЛ рдХрднреА рдирд╣реАрдВ рд╕рдордЭ рдкрд╛рдПрдВрдЧреЗред
рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ, JTable рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рд╕реНрдерд┐рд░ рдЙрджрд╛рд╣рд░рдг рдЖрдкрдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдЗрдЪреНрдЫрд┐рдд рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдХреЗрд╡рд▓ рддрднреА рдЬрдм рдЖрдк рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЖрдк рдХреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЕрдВрдд рдореЗрдВ, рдореИрдВ рдЬреЛрдбрд╝реВрдВрдЧрд╛ - рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдкрд░ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдХреЛрдб рдХреЗ рдХреБрдЫ рдЯреБрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд┐рдП рдЧрдП рдереЗ (рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЙрди рд╕рднреА рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж), рд▓реЗрдХрд┐рди рдЙрди рд╕рднреА рдореЗрдВ рдПрдХ рдЪреАрдЬ рд╕рдорд╛рди рд╣реИ - рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдбрд┐рдмрдЧ рдХрд┐рдпрд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рд░рдЧрдбрд╝ рджрд┐рдпрд╛, рдЕрд░реНрдерд╛рдд, рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдб рдирд╣реАрдВ рдорд┐рд▓рд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ ... рдирд╣реАрдВред рдореИрдВрдиреЗ рдЕрдкрдирд╛ рдХреЛрдб рдХреЗрд╡рд▓ рдЗрд╕рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдЕрдВрдЧреНрд░реЗрдЬреА рднрд╛рд╖рд╛ рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕реЗ рдХреНрд░рдорд╛рдВрдХрди рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдХрд╛рд░реНрдп рдХреЛрдб рд▓рд┐рдпрд╛ рдерд╛, рдЬрдм рдореИрдВрдиреЗ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рддреЛ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЧрдпрд╛ (рд╕рдВрд╕рд╛рдзрди рдХрд╛ рд▓рд┐рдВрдХ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдЦреЛ рдЧрдпрд╛ рдерд╛ ...)
рд▓реЗрдХрд┐рди рдХреНрд░рдо рдореЗрдВ "рдбреНрд░реЗрдЧрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ" рдХреЛрдбред
рдУрд╣, рдЖрдк рдХрд┐рддрдиреЗ рд╢рд╛рдирджрд╛рд░ рд╣реИрдВ, рдорд╣рд╛рди рдбреНрд░реИрдЧрди рдПрд░рд░ рд▓реЙрдЧ
рдЦреИрд░, рдЕрдм рдореБрдЭреЗ рдмрддрд╛рдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИ: тАЬрдХреНрдпрд╛ рддреБрдо рдПрдХ рдирдЦрд░реЗ рдХреЗ рд╕рд╛рде рдирд╛рдЪ рд░рд╣реЗ рд╣реЛ? рдпрд╛ рдЗрд╕реЗ рдирд╣реАрдВ рдкрдврд╝рд╛? Google рдмреЗрд╣рддрд░ рд╣реИ рдФрд░ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рд╕рднреА рджрд┐рдорд╛рдЧреЛрдВ рдХреЛ рд╕реНрдкрд╛рдЗрдХреНрд╕ рдореЗрдВ рдирд╣реАрдВ рдбрд╛рд▓ рд╕рдХрддрд╛ рд╣реИ ... рд╣рдо рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред "рджрд░рдЕрд╕рд▓," рдЬрд╛рд╡рд╛ 2. рдкреБрд╕реНрддрдХ 2. рд╡реЙрд▓реНрдпреВрдо 2ред рдкреБрд╕реНрддрдХ рдХреЗ рдЗрд╕ рдЕрдиреБрд╡рд╛рдж рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рд╕реВрдХреНрд╖реНрдорддрд╛рдПрдВред рд▓реЗрдЦрдХ - рдХрд╛рдп рд╣реЛрд░реНрд╕реНрдЯрдореИрди рдФрд░ рд╣реИрд░реА рдХреЙрд░реНрдиреЗрд▓ "(рдореЗрд░реЗ рдкрд╛рд╕ 8 рд╡рд╛рдВ рдкреНрд░рд┐рдВрдЯ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ), рдореБрдЭреЗ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдХреЛрдб рдорд┐рд▓рд╛:
// FileOutputStream fos = new FileOutputStream("temp.out"); ObjectOutputStream oos = new ObjectOutputStream(fos); SerialTest st = new SerialTest(); oos.writeObject(st); oos.flush(); oos.close(); // FileInputStream fis = new FileInputStream("temp.out"); ObjectInputStream oin = new ObjectInputStream(fis); TestSerial ts = (TestSerial) oin.readObject(); System.out.println("version="+ts.version);
рдЬреЛ рдХрд┐рд╕реА рднреА рдкрд░рд┐рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдореЗрдЬ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЬрд╣рд╛рдВ рднреА рдореИрдВрдиреЗ рдЬрд╛рджреВ рдордВрддреНрд░ "рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╕реАрд░рд┐рдпрд▓"ред
-рд╣рд╛рдБ, рдЖрдк рдПрдХ рдЕрд▓рдЧ рд╡рд░реНрдЧ рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдм рдЖрдк рдЕрдкрдиреЗ TableCellRenderer рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ JTable рдореЗрдВ рддреБрд░рдВрдд tully рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕рдореЗрдВ рд╡рд╣ рд╕рдм рдХреБрдЫ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдЖрдкрдХреЛ рдЪрд╛рд╣рд┐рдП! - рдЙрдиреНрд╣реЛрдВрдиреЗ рдЕрдХреЗрд▓реЗ рдХрд╣рд╛ ...
- рдиреН ... рдЖрдкрдХреЛ рдПрдХ рдЕрд▓рдЧ рд╡рд░реНрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЬрд╛рд╡рд╛ "khukh-mukhra" рдирд╣реАрдВ рд╣реИ рдФрд░ рдХрд┐рд╕реА рдиреЗ MVC рдореЙрдбрд▓ рдХреЛ рд░рджреНрдж рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред - рджреВрд╕рд░реЛрдВ рдиреЗ рдХрд╣рд╛ред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЗрди рд╕рднреА рд╡рд┐рд╡рд╛рджреЛрдВ рдФрд░ рд╡рд░реНрдЧреЛрдВ рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдкреНрд░рд╕реНрддрд╛рд╡ рдЬреЛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рдереЗ рдпрд╛ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рдереЗ, рдореИрдВ рдмрд╣реБрдд рдкрд░реЗрд╢рд╛рди рдерд╛ рдФрд░ рдореИрдВ рднреА рд╕рдм рдХреБрдЫ рдкрд░ рдереВрдХрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ "рдЧреНрд░реЗ" рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ ... рдЕрдЪрд╛рдирдХ, рд╡рд┐рджреЗрд╢реА рдордВрдЪреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ, рдореБрдЭреЗ рдПрдХ рдХреЛрдб рдорд┐рд▓рд╛ рд╣реИ, рдЬреЛ рд▓реЗрдЦрдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдПрдХ рд╕реМ рдкреНрд░рддрд┐рд╢рдд рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ рдХрд┐рд╕реА рднреА рдбрд┐рдЬрд╛рдЗрдирд░ рдХреА рд╕рдирдХ рдкрд░ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИред рдЗрд╕ рдХреЛрдб рдХреА рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдкрд░, рдореБрдЭреЗ рдПрдХ рдРрд╕рд╛ рддрд░реАрдХрд╛ рдорд┐рд▓рд╛ рдЬрд┐рд╕рдиреЗ рдЯреЗрдмрд▓ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдмрдирд╛рдпрд╛ рдЕрдЧрд░ рдлрд╛рдЗрд▓ рдбрд┐рд╕реНрдХ рд╕реЗ рдЧрд╛рдпрдм рдереА рдФрд░ рдЯреЗрдмрд▓ рдХреЛ рдЙрд╕рдореЗрдВ рднрд░ рджрд┐рдпрд╛ред рдХреЛрдб рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж (рдЙрдкрд░реЛрдХреНрдд рдмрд╣реБрдд рдХрд░реАрдм), рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдХрд░ рдЖрд╢реНрдЪрд░реНрдп рд╣реБрдЖ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ! "рдУрд╣ рд╕реНрд╡рд░реНрдЧ!" - рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ - "рдХреНрдпрд╛ рдореЗрд░реА рдкреНрд░рд╛рд░реНрдердирд╛ рдХрд╛ рдЙрддреНрддрд░ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХреНрдпрд╛ рдореИрдВ рдЕрдкрдиреА рдмрдЪреНрдЪреА рдХреЛ рд╡рд╛рдкрд╕ рдЯреИрдореНрдмреЛрд░рд┐рди рджреЗ рд╕рдХрддрд╛ рд╣реВрдБ?" ... рд▓реЗрдХрд┐рди рдЬреИрд╕реЗ рд╣реА рдореИрдВрдиреЗ рдЯреЗрдмрд▓ рдореЗрдВ рдбреЗрдЯрд╛ рдбрд╛рд▓рд╛ рдФрд░ рд╕реЗрд╡ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд┐рдпрд╛ ... рдЯреИрдореНрдмреЛрд░рд┐рди рдХреА рддрд░рд╣, рдореБрдЭреЗ рдлрд┐рд░ рд╕реЗ рдЬрд╝рд░реВрд░рдд рдереА ...
рдЕрдм, рдпрд╣ рд╕рдореНрдорд╛рди рдХреА рдмрд╛рдд рд╣реЛ рдЧрдИ рд╣реИ! рдореИрдВ рдХрд┐рд╕реА рднреА рдорд╛рдВрддреНрд░рд┐рдХ рдХреЛ рдЕрдкрдиреА рдмрдЪреНрдЪреА рдХреА рдмреЗрдЯреА рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдпрд╛ рдЙрд╕рдХреА рдореМрдЬреВрджрдЧреА рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ рдерд╛ рдФрд░ рддрдВрдмреВрд░рд╛ рдХреА рд▓рдЧрд╛рддрд╛рд░ рдЖрд╡рд╛рдЬ рдХреЗ рдХрд╛рд░рдг рдкрдбрд╝реЛрд╕рд┐рдпреЛрдВ рдХреА рдШрдмрд░рд╛рд╣рдЯ рдЯреВрдЯ рдЧрдИ ... рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯреА рд▓рдбрд╝рд╛рдИ рдХреЗ рдмрд╛рдж:
рдореИрдВрдиреЗ рдкреВрд░реА рджреБрдирд┐рдпрд╛ рдХреЗ рд╢рдорд╕рд╛рдиреЛрдВ рдФрд░ рд╕реНрд╡рдпрдВ рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рд╕реЗ рдЕрдкреАрд▓ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ ... рдФрд░ рдореИрдВ рдУрд░реЗрдХрд▓ рдмрдЧ рдЯреНрд░реИрдХрд░ рдХреЗ рдкрд╛рд╕ рдЧрдпрд╛, рдЬрд╣рд╛рдВ рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдХрд░ рдЖрд╢реНрдЪрд░реНрдп рд╣реБрдЖ рдХрд┐ рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИред
рдФрд░ рдЬрд╛рд╡рд╛ рд╕рдВрд╕реНрдХрд░рдг "1.4.0-beta2" рд╕реЗ рдХрдИ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рд▓рдбрд╝рд╛рдИ рдЪрд▓ рд░рд╣реА рд╣реИ
рддрдм рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреНрд░рдмреБрджреНрдз рд╢рдорд╕рд╛рди, рдЬреИрд╕реЗ рдХреНрд▓рд┐рдпреЛрдкреЗрдЯреНрд░рд╛, рдмрд╣реБрдд рдкрд╣рд▓реЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдХреЙрд▓ рдХреЗ рд╕рд╛рде рддреНрд░реБрдЯрд┐ рд▓реЙрдЧ рдбреНрд░реИрдЧрди рдХреЗ рдкрдВрдЦ рдХрд╛рдЯ рд░рд╣рд╛ рдерд╛:
// , // "", table.editingStopped(null); // , Java, /*: * * The first issue in the description deals with the improper behavior * of losing edits on focus exit the first time but for not subsequent * attempts. The problem was correctly diagnosed by Kleopatra in bug * report 4518907. java.swing.JTable indeed does need to set 'editorRemover' * to null after calls to * removePropertyChangeListener("focusOwner", editorRemover); * in both removeNotify() and in removeEditor(). * */ // , table.removeEditor(); // table.removeNotify();
рдЦреИрд░, рдпрд╣ рд╣реИ, рдбреНрд░реИрдЧрди рдХреЛ рдкрд░рд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ ...
рд▓реЗрдХрд┐рди рдирд╣реАрдВ, рд╡рд╣ TableCellRenderer рдХреЗ рд╕рд╛рде рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛ рдерд╛ ...
рдбреНрд░рд╛рдЗрдВрдЧ рд╕рдмрдХ, рдпрд╛ "рдирд╣реАрдВ, рдирд╣реАрдВ, рдореБрдЭреЗ рддреНрд░реБрдЯрд┐ рд▓рд╛рд▓ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ"
рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдЯреЗрдмрд▓ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рддреНрд░реБрдЯрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рд▓рдЧрд╛рдП рдЧрдП рдирдП рдХреИрдореНрдк рдлрд╛рдпрд░ рдореЗрдВ рдЬрдЯрд┐рд▓ рдиреГрддреНрдп рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЯреЗрдмрд▓ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХреЗ рджреЛ рд╡рд░реНрдЧреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реЛрдЧрд╛, рдПрдХ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдФрд░ рджреВрд╕рд░рд╛ рдХреЙрд▓рдо рдирд╛рдореЛрдВ (рд▓реЗрдмрд▓) рдХреЗ рд▓рд┐рдП:
// class JCTableCellRenderer extends JLabel implements TableCellRenderer, Serializable {} // class JColumnRenderer extends JLabel implements TableCellRenderer, Serializable {}
рдЕрдм рдпрд╣ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
// JCTableCellRenderer table.setDefaultRenderer(Object.class, new JCTableCellRenderer());
LoadColumn () рдкрджреНрдзрддрд┐ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд╣рдо рд▓рд┐рдЦрддреЗ рд╣реИрдВ:
рд╕рдм рдХреБрдЫ рддреБрд░рдВрдд рдЬрдЧрд╣ рдореЗрдВ рдЧрд┐рд░ рдЧрдпрд╛, рд╕рднреА рдбреЗрдЯрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрдврд╝рд╛ рдФрд░ рдЧрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЕрдм рдореИрдВрдиреЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреА рдЦреЛрдЬ рд╢реБрд░реВ рдХрд░ рджреА рдХрд┐ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП, рдХреЛрд╢рд┐рдХрд╛рдУрдВ, рдкрдВрдХреНрддрд┐рдпреЛрдВ рдФрд░ рд╕реНрддрдВрднреЛрдВ рдХреЛ рдЪрд┐рддреНрд░рд┐рдд рдХрд░рдирд╛ред
рдЕрдЬреАрдм рддрд░рд╣ рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЬреЛ рдХреБрдЫ рднреА рдЪрд╛рд╣рд┐рдП рдЙрд╕рдХреА рдкреНрд░рддрд┐рдЬреНрдЮрд╛ рдХреЗ рд╕рд╛рде рд╕рднреА рд▓рд┐рдВрдХ
рдпрд╣рд╛рдВ рдиреЗрддреГрддреНрд╡ рдХрд┐рдП рдЧрдП рдереЗред
рдЬрд╛рдирдХрд╛рд░реА рдмрд╣реБрдд рдореВрд▓реНрдпрд╡рд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдбрд┐рдЬрд╝рд╛рдЗрди рджреБрд░реНрд▓рдн рд╣реИ рдФрд░ TableCellRenderer рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдХрдо рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ рдЯреЗрдмрд▓ рдХреЛ рд░рдВрдЧрдиреЗ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛, рдФрд░ рдЖрдЦрд┐рд░ рдореЗрдВ рдореИрдВрдиреЗ рдХреНрдпрд╛ рд╕реАрдЦрд╛?
// public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {...} // : //@param: table - , , //@param: value - //@param: isSelected - ( ) //@param: hasFocus - //@param: row - //@param: column -
JTable рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд░рдВрдЧ рднрд░рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг:
// JLabel, , - JLabel c = new JLabel(value.toString()); // , - value.toString() // "jpg", if(value.equals("jpg")){c.setOpaque(true);c.setBackground(new Color(152, 251, 152));} // if(column==0){c.setOpaque(true);c.setBackground(new Color(255, 248, 220));} // , "iff" if(table.getValueAt(row, 7).equals("iff")){ c.setOpaque(true); c.setBackground(new Color(255, 105, 180)); c.setForeground(Color.white);} // : , //... //, : (String)table.getModel().getValueAt(row, 4) // int a = Integer.parseInt(""+table.getModel().getValueAt(row, 4)); int b = Integer.parseInt(""+table.getModel().getValueAt(row, 5)); if(a > b) { c.setOpaque(true);c.setBackground(Color.red);c.setForeground(Color.yellow); if(column==8) { c.setText("Error this value: colomn - \"Start\", row - " + (row+1)); table.getModel().setValueAt(c.getText(), row, column); } } else { // , , // , //, , // if(column==8) { java.io.File f = new java.io.File((String) table.getModel().getValueAt(row, 9)); if(f.exists()) { table.getModel().setValueAt("<This file is exist>", row, column); } else { table.getModel().setValueAt("<This file is not exist!!!>", row, column); c.setOpaque(true);c.setBackground(Color.red);c.setForeground(Color.yellow); } } } // http://skipy-ru.livejournal.com/1577.html // - // using L&F colors if(isSelected) { c.setOpaque(true); c.setForeground(isSelected ? UIManager.getColor("Table.selectionForeground") : UIManager.getColor("Table.foreground")); c.setBackground(isSelected ? UIManager.getColor("Table.selectionBackground") : UIManager.getColor("Table.background")); c.setBorder(hasFocus ? BorderFactory.createLineBorder(UIManager.getColor("Table.selectionForeground"), 1) : BorderFactory.createEmptyBorder(2, 2, 2, 2)); // , // if(value.equals("jpg")){c.setOpaque(true);c.setBackground(new Color(0, 128, 128));} if(value.equals("png")){c.setOpaque(true);c.setBackground(new Color(250, 250, 210));} if(value.equals("iff")){c.setOpaque(true);c.setBackground(new Color(72, 61, 139));c.setForeground(Color.white);} if(column==0){c.setOpaque(true);c.setBackground(new Color(210, 105, 30));} }
рдЦреИрд░, рдмрд╕ рдЗрддрдирд╛ рд╣реАред
рдЕрдм рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ - рдЗрд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рд░рдВрдЧ рдореЗрдВ рдЪрд┐рддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЕрдкрдиреА рдпреЛрдЬрдирд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЧреНрд░рд╣рдг v рд╡рд┐рдХрд╛рд╕ рдкрд░реНрдпрд╛рд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред 3.7
рдЦреИрд░ ... рдЕрдЧрд░ рдЖрдк рдЗрд╕ рдЬрдЧрд╣ рдкрд░ рдкрдврд╝рддреЗ рд╣реИрдВ, рддреЛ рдЕрдкрдиреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рдпрджрд┐ рдЖрдк рдПрдХ рдкреНрд░рд╢реНрди рдкреВрдЫрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреИрд╕реЗ: "рдореИрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдРрд╕рд╛ рдХреИрд╕реЗ рдХрд░реВрдВ?" рдпрд╛ "рдХреНрдпреЛрдВ, рдЬрдм рдореИрдВ JCTableCellRenderer рд╡рд░реНрдЧ рдореЗрдВ рдорд╛рдиреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╕рдордп рд▓реВрдк рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореЗрд░реА рддрд╛рд▓рд┐рдХрд╛ рдмрд╣реБрдд рд╣реИрдВрдЧ рд╣реЛ рдЬрд╛рддреА рд╣реИ", рддреЛ рдореИрдВ рдпрд╣ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рд╣реИ рдореИрдВрдиреЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ (рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ), рдФрд░ рдпрд╣ рднреА - рдбреНрд░рд╛рдЗрдВрдЧ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рд▓рд╛рдЧреВ рд▓реВрдк, рдпрд╣ рдХреНрд▓рд┐рдк рдЯрд╛рдЗрдорд▓рд╛рдЗрди рдореЗрдВ рдЯрд╛рдЗрдорд░ рдХреЗ рд╕рдорд╛рди рд╣реА рд╡рд┐рдХреГрддрд┐ рд╣реИ Flashред рдореИрдВ рд╣рдореЗрд╢рд╛ "рд╕рд░рд▓, рддреЗрдЬ" рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЕрдкрдиреЗ рдХреЛрдб рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред
рдЖрд╡рд╢реНрдпрдХ рдмрд╛рд╣рд░реА рдХрдХреНрд╖рд╛рдПрдВ рдФрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдХреЛрдб рд╕реНрд╡рдпрдВ
рд╕рдВрд▓рдЧреНрди рд╣реИрдВ (рдЧреНрд░рд╣рдг рдореЗрдВ рдЦреБрд▓реЗ)ред
рд╕рднреА рдХреЛ рд╢реБрднрдХрд╛рдордирд╛рдПрдБред