İÇİNDEKİLER
İçindekiler
Önsöz 7
Giriş
JFC (Java Foundation Class) ve Swing 19
Neden AWT Yetersiz? 20
Swing’le Ne Değişti? 20
Swing MVC Yapısı (Model–View–Contoller) 20
Swing Mimarisi 21
Swing Taşıyıcıları 21
NetBeans Kullanarak Uygulama Geliştirme 22
Proje Oluşturma 23
NetBeans Arayüzünü Tanıma 27
Palette 27
Design Area 27
Property Editor 28
Inspector 29
NetBeans’i Başlatmak 29
Kod Editörünü Kullanma 31
Kodda Değişiklik Yapmak 32
Uygulamayı Debug Etmek 32
Tasarım Alanında Çalışmak 34
Uygulamayı Oluşturma 35
Bölüm I
Swing Bileşenlerini Anlamak
JLabel 41
JLabel Yapılandırıcıları 42
Özelliklerinin Atanması 42
JLabel Yordamlarını Kullanmak 45
Yararlı Bazı Yordamlara Daha Yakından Bakmak 48
JTextField 51
JTextField Yapılandırıcıları 51
Özelliklerinin Atanması 52
JTextField Yordamlarını Kullanmak 53
Yararlı Bazı Yordamlara Daha Yakından Bakmak 54
JTextArea 59
JTextArea Yapılandırıcıları 59
Özelliklerinin Atanması 59
JTextArea Yordamlarını Kullanmak 61
Yararlı Bazı Yordamlara Daha Yakından Bakmak 63
Metin Bileşenlerini Kullanarak Bir Uygulama Geliştirmek 67
JEditorPane ve JTextPane 73
JEditor ve JTextPane Arasındaki Farklılıklar 73
JEditorPane ve JTextPane Yapılandırıcıları 74
Özelliklerinin Atanması 74
JEditorPane ve TextPane Yordamlarını Kullanmak 76
Basit Bir Metin Düzenleyicisi Uygulaması Geliştirmek 80
JPasswordField 89
JPasswordField Yapılandırıcıları 89
Özelliklerinin Atanması 90
JPasswordField Yordamlarını Kullanmak 92
Yararlı Bazı Yordamlara Daha Yakından Bakmak 93
Bir Kullanıcı Kimlik Denetimi Uygulaması Geliştirmek 98
JFormattedTextField 100
JFormattedTextField Yapılandırıcıları 100
Özelliklerinin Atanması 101
Format Kullanmak 103
MaskFormatter Kullanmak 103
JFormattedTextField Yordamlarını Kullanmak 103
Yararlı Bazı Yordamlara Daha Yakından Bakmak 104
Biçimli Metin Kutularıyla Basit Bir Kasa İşlemleri Uygulaması Geliştirmek 110
JSpinner 112
JSpinner Yapılandırıcıları 112
Özelliklerinin Atanması 112
JSpinner Yordamlarını Kullanmak 113
Yararlı Bazı Yordamlara Daha Yakından Bakmak 114
JButton 116
JButton Yapılandırıcıları 116
Özelliklerinin Atanması 117
JButton Yordamlarını Kullanmak 119
Yararlı Bazı Yordamlara Daha Yakından Bakmak 120
JCheckBox 125
JCheckBox Yapılandırıcıları 125
Özelliklerinin Atanması 126
JCheckBox Yordamlarını Kullanmak 128
Yararlı Bazı Yordamlara Daha Yakından Bakmak 129
JRadioButton 134
JRadioButton Yapılandırıcıları 134
Özelliklerinin Atanması 135
JRadioButton Yordamlarını Kullanmak 137
Yararlı Bazı Yordamlara Daha Yakından Bakmak 139
JToggleButton 144
JToggleButton Yapılandırıcıları 144
Özelliklerinin Atanması 144
JToggleButton Yordamlarını Kullanmak 147
Yararlı Bazı Yordamlara Daha Yakından Bakmak 147
ButtonGroup 152
ButtonGroup Yapılandırıcıları 152
Özelliklerinin Atanması 153
ButtonGroup Yordamlarını Kullanmak 153
JComboBox 155
JComboBox Yapılandırıcıları 155
Özelliklerinin Atanması 155
JComboBox Yordamlarını Kullanmak 157
Yararlı Bazı Yordamlara Daha Yakından Bakmak 158
JList 161
JList Yapılandırıcıları 161
Özelliklerinin Atanması 162
JList Yordamlarını Kullanmak 163
Yararlı Bazı Yordamlara Daha Yakından Bakmak 164
JScrollBar 169
JScrollBar Yapılandırıcıları 169
Özelliklerinin Atanması 169
JScrollBar Yordamlarını Kullanmak 171
Yararlı Bazı Yordamlara Daha Yakından Bakmak 172
JSlider 175
JSlider Yapılandırıcıları 175
Özelliklerinin Atanması 175
JSlider Yordamlarını Kullanmak 177
Yararlı Bazı Yordamlara Daha Yakından Bakmak 179
Bölüm II
Taşıyıcılar
JPanel 183
JPanel Yapılandırıcıları 183
Özelliklerinin Atanması 183
JPanel Yordamlarını Kullanmak 184
Yararlı Bazı Yordamlara Daha Yakından Bakmak 185
Tasarım Anında JPanel ile Çalışmak 188
JSplitPane 189
JSplitPane Yapılandırıcıları 189
Özelliklerinin Atanması 190
JSplitPane Yordamlarını Kullanmak 191
Yararlı Bazı Yordamlara Daha Yakından Bakmak 192
Tasarım Anında JSplitPane ile Çalışmak 196
JTabbedPane 198
JTabbedPane Yapılandırıcıları 198
Özelliklerinin Atanması 198
JTabbedPane Yordamlarını Kullanmak 199
Yararlı Bazı Yordamlara Daha Yakından Bakmak 200
Tasarım Anında JTabbedPane ile Çalışmak 205
JScrollPane 207
JScrollPane Yapılandırıcıları 207
Özelliklerinin Atanması 208
JScrollPane Yordamlarını Kullanmak 209
Yararlı Bazı Yordamlara Daha Yakından Bakmak 210
JLayeredPane 214
JLayeredPane Yapılandırıcıları 215
Özelliklerinin Atanması 215
JLayeredPane Yordamlarını Kullanmak 216
Yararlı Bazı Yordamlara Daha Yakından Bakmak 217
Tasarım Anında JLayeredPane ile Çalışmak 220
JDesktopPane 221
JDesktopPane Yapılandırıcıları 222
Özelliklerinin Atanması 222
JDesktopPane Yordamlarını Kullanmak 223
Yararlı Bazı Yordamlara Daha Yakından Bakmak 224
Bölüm III
Yerleşim Düzenleyiciler
Bir Taşıyıcı İçerisine Bileşenleri Yerleştirme 229
Yerleşim Düzenleyiciler 229
BorderLayout 229
BorderLayout Yapılandırıcıları 230
Yararlı Bazı Yordamlara Daha Yakından Bakmak 231
BoxLayout 231
BoxLayout Yapılandırıcıları 232
Yararlı Bazı Yordamlara Daha Yakından Bakmak 233
CardLayout 233
CardLayout Yapılandırıcıları 234
Yararlı Bazı Yordamlara Daha Yakından Bakmak 234
FlowLayout 235
FlowLayout Yapılandırıcıları 236
Yararlı Bazı Yordamlara Daha Yakından Bakmak 236
GridBagLayout 236
GridBagLayout Yapılandırıcıları 238
Yararlı Bazı Yordamlara Daha Yakından Bakmak 238
GridBagConstraints Yapılandırıcıları 238
Yararlı Bazı Yordamlara Daha Yakından Bakmak 239
GridLayout 239
GridLayout Yapılandırıcıları 240
Yararlı Bazı Yordamlara Daha Yakından Bakmak 240
GroupLayout 241
GroupLayout Yapılandırıcıları 244
Yararlı Bazı Yordamlara Daha Yakından Bakmak 245
Tasarım Anında Yerleşim Düzenleyicileri Kullanma 246
Bölüm IV
Çerçevelerle Çalışmak
BorderFactory ile Çerçeve Oluşturmak 250
Yararlı Bazı Yordamlara Daha Yakından Bakmak 252
Tasarım Anında Çerçeveleri Kullanma 252
Bölüm V
Formlarla Çalışmak
Bir Form Oluşturmak ve Göstermek 255
JFrame Yapılandırıcıları 256
Özelliklerinin Atanması 256
Yararlı Bazı Yordamlara Daha Yakından Bakmak 257
Form Görünümlerini Belirleme 258
Form Görünüm ve Davranış Biçimini Değiştirme 259
Geçerli “Görünüm ve Davranış”lar 259
Geçerli Görünüm Biçimini Değiştirme 260
Nimbus G&D 260
Numbus G&D Biçimlendirme 262
Temalar 264
Bir İçsel Form Oluşturmak ve Göstermek 265
JInternalFrame Yapılandırıcıları 266
Özelliklerinin Atanması 267
Yararlı Bazı Yordamlara Daha Yakından Bakmak 268
JToolBar 270
JToolBar Yapılandırıcıları 271
Özelliklerinin Atanması 271
JToolBar Yordamlarını Kullanmak 272
Yararlı Bazı Yordamlara Daha Yakından Bakmak 273
Bölüm VI
Menülerle Çalışmak
Menü Bileşenleri Hiyerarşisi 275
JMenuBar 276
JMenuBar Yapılandırıcıları 276
Özelliklerinin Atanması 276
JMenuBar Yordamlarını Kullanmak 277
Yararlı Bazı Yordamlara Daha Yakından Bakmak 278
JMenu 279
JMenu Yapılandırıcıları 279
Özelliklerinin Atanması 280
JMenu Yordamlarını Kullanmak 282
Yararlı Bazı Yordamlara Daha Yakından Bakmak 282
JMenuItem 286
JMenuItem Yapılandırıcıları 287
Özelliklerinin Atanması 287
JMenuItem Yordamlarını Kullanmak 289
Yararlı Bazı Yordamlara Daha Yakından Bakmak 290
JCheckBoxMenuItem 294
JCheckBoxMenuItem Yapılandırıcıları 294
Özelliklerinin Atanması 295
JCheckBoxMenuItem Yordamlarını Kullanmak 297
Yararlı Bazı Yordamlara Daha Yakından Bakmak 298
JRadioButtonMenuItem 302
JRadioButtonMenuItem Yapılandırıcıları 302
Özelliklerinin Atanması 303
JRadioButtonMenuItem Yordamlarını Kullanmak 305
Yararlı Bazı Yordamlara Daha Yakından Bakmak 307
JPopupMenu 311
JPopupMenu Yapılandırıcıları 311
Özelliklerinin Atanması 311
JPopupMenu Yordamlarını Kullanmak 312
Yararlı Bazı Yordamlara Daha Yakından Bakmak 314
Tasarım Anında Menüleri Kullanma 316
Bölüm VII
İletişim Kutularıyla Çalışmak
JOptionPane 322
Basit Bir İletişim Penceresi Oluşturmak ve Görüntülemek 322
showMessageDialog 323
showOptionDialog 324
İletişim Penceresi Düğme Metinlerini Özelleştirmek 325
Bir İletişim Penceresi Aracılığıyla Kullanıcıdan Bilgi Almak 326
İletişim Penceresinin Kendiliğinden Kapanmasını Durdurma 327
JOptionPane Yordamları 328
JDialog 333
JDialog Yapılandırıcıları 333
Özelliklerinin Atanması 335
JDialog Yordamlarını Kullanmak 336
Yararlı Bazı Yordamlara Daha Yakından Bakmak 337
Tasarım Anında JDialog’la Çalışma 340
Bölüm VIII
İleri Düzey Bileşenler
JColorChooser 347
JColorChooser Yapılandırıcıları 347
Özelliklerinin Atanması 347
JColorChooser Yordamlarını Kullanmak 348
Yararlı Bazı Yordamlara Daha Yakından Bakmak 350
JFileChooser 350
JFileChooser Yapılandırıcıları 351
Özelliklerinin Atanması 351
JFileChooser Yordamlarını Kullanmak 353
Yararlı Bazı Yordamlara Daha Yakından Bakmak 355
JTree 357
JTree Yapılandırıcıları 358
Özelliklerinin Atanması 358
JTree Yordamlarını Kullanmak 360
Yararlı Bazı Yordamlara Daha Yakından Bakmak 361
JTable 366
JTable Yapılandırıcıları 366
Özelliklerinin Atanması 367
JTable Yordamlarını Kullanmak 369
Yararlı Bazı Yordamlara Daha Yakından Bakmak 369
Bölüm IX
Olay Dinleyicilerini Anlamak
Olay Dinleyicileri Yazma 376
Olay Bilgilerini Alma: Olay Nesneleri 376
Kavramlar: Düşük–Düzey Olaylar ve Anlamsal Olaylar 376
Olay Bağdaştırıcıları 377
İç Sınıflar ve Anonim İç Sınıflar 378
EventHandler Sınıfı 379
Swing Bileşenlerince Sağlanan Dinleyiciler 379
Tüm Swing Bileşenlerince Sağlanan Dinleyiciler 380
Swing Bileşenlerinin Desteklediği Diğer Dinleyiciler 380
Ortak Yönetilen Olaylar İçin Dinleyiciler Geliştirme 382
Bir Action Listener Yazma 382
ActionListener API’si 385
Bir Caret Listener Yazma 386
Caret Listener API’si 387
Bir Change Listener Yazma 388
Change Listener API’si 389
Bir ComponentListener Yazma 389
Component Listener API’si 392
Bir Container Listener Yazma 393
Container Listener API’si 395
Bir Document Listener Yazma 395
Document Listener API’si 397
Bir Focus Listener Yazma 397
Focus Listener API’si 399
Bir InternalFrame Listener Yazma 399
InternalFrameListener API’si 401
Bir Item Listener Yazma 401
Item Listener API’si 402
Bir Key Listener Yazma 403
Key Listener API’si 405
Bir List Data Listener Yazma 406
List Data Listener API’si 408
Bir ListSelectionListener Yazma 409
List Selection Listener API’si 412
Bir MouseListener Yazma 413
Mouse Listener API’si 415
Bir MouseMotionListener Yazma 416
MouseMotionListener API’si 418
Bir MouseWheelListener Yazma 418
MouseWheelListener API’si 420
Bir PropertyChangeListener Yazma 421
PropertyChangeListener API’si 424
Bir TableModelListener Yazma 425
Table Model Listener API’si 427
Bir TreeExpansionModelListener Yazma 428
TreeExpansionListener API’si 430
Bir Tree Model Listener Yazma 430
Tree Model Listener API’si 432
Bir Tree Selection Listener Yazma 433
Tree Selection Listener API’si 435
Bir Tree–Will–Expand Listener Yazma 436
Tree–Will–Expand Listener API’si 438
Bir WindowListener Yazma 438
WindowListener APIsi 442
Bölüm X
Swing ve JDBC™ ile Database Erişimi
JDBC Bileşenleri 446
JDBC Mimarisi 446
İlişkisel Veritabanları 448
İfadesi 449
WHERE Tümceciği 449
Birleştirmeler 450
Ortak SQL Komutları 452
Sonuç Kümeleri ve İmleçler 452
İşlemler (Transactions) 452
Depolanmış İşlem Grupları (Stored Procedures) 453
Üstveri (MetaData) 453
JDBC Temelleri 453
Veritabanını Ayarlama 454
Bağlantı Oluşturma 455
Bağlantı (Connection) Arayüzü Yordamları 456
Sonuç Kümelerinden Değerleri Alma 458
Veri Kümesi (Resultset) Yordamlarını Kullanma 459
getXXX Yordamları 460
Veri Kümesi (ResultSet) Arayüzü Yordamları 462
Tabloları Güncelleme 469
Hazırlanmış İfadeleri Kullanma (Prepared Statements) 470
Hazırlanmış İfade (Prepared Statement) Arayüzü Yordamları 471
Birleştirmeleri Kullanma 473
İşlemleri (Transactions) Kullanma 474
Depolanmış İşlem Grupları (Stored Procedure) Kullanma 476
NetBeans IDE Veritabanı Gezginini Kullanma 477
MySQL Sunucusuna Erişim 478
Yeni Bir Veritabanı Oluşturma 479
Yeni Bir Tablo Oluşturma 480
Tablo Verileriyle Çalışma 482
Bir JDBC Uygulaması Geliştirme 483
Bölüm XI
Swing ve Java Persistence API ile Database Erişimi
Kalıcılık Nesnesi: Varlık 504
@Entity 504
@Table 504
@Column 504
@Id 504
@NamedQueries ve @NamedQuery 505
Kalıcılık Birimleri 505
Varlık Sınıfını Kullanarak Tabloya Yeni Bir Satır Ekleme 506
Varlık Sınıfı Kullanarak Aramalar Yapmak 506
Kalıcılık Sorgu Dili 507
Bir JPA Uygulaması Geliştirme 508
Uygulama Çatısını Oluşturma 508
Bind Penceresiyle Çalışma 512
“Source When” Alanını Anlamak 515
Bölüm XII
Baskı ve Raporlama İşlemleri
Baskı İşlemi 517
Basit Bir Baskı Uygulaması Geliştirme 517
JasperReports ve iReport’la Açık Kaynaklı Raporlama 522
Başlamadan Önce 522
Veritabanı Bağlantısının Kurulması 523
Raporu Oluşturma 524
Oluşturulan Raporları Java Uygulamasında Kullanma 531
Parametreli Rapor Sorguları Oluşturma 534
NetBeans Aracılığıyla JasperReport Kullanma 535
INDEX 537 |