Ceviz Forum

Geri Dön   Ceviz Forum > Programlama > Java / JSP

Cevapla
 
LinkBack Seçenekler
Eski 04/04/2007, 11:51   #1 (permalink)
Üye
 
aysila Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 06/2005
Mesaj: 73
Varsayılan Printable sınıfı nesnesini JScrollPane nesnesine eklerken

Merhaba;

"class yazdirici extends JComponent implements Printable"
böyle bi sınıftan türettiğim nesnemi JScrollPane kullanarak sayfada göstermek istiyorum. Türeyen nesnemde 590,830 boyutlarında bir Graphics2D nesnesi var. Sayfadaki JScrollPane boyutunu 590,830 yaptıgımda türeyen nesneyi (resmi) tamamen görmekteyim. Scrolun boyutunu küçülttüğümde ise mesela 590,500 yaptıgımda resmin sadece o kısmını gösteriyor.

JScrollPane nesnemin boyutlarını küçülttüğüm zaman kaydırma cubuklarının ortaya cıkmasını ve yukardaki sınıftan türemiş nesnemin tamamını görmeyi nasıl sağlarım.

Umarım Anlatabilmişimdir.
Saygılar.
aysila hatta değil   Alıntı Yaparak Yanıtla
Eski 04/04/2007, 22:04   #2 (permalink)
Eski Cevizci
 
mr1yh1 Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 04/2005
Yer: samsun
Mesaj: 1,163
Varsayılan

anladığım kadarı ile JScrollPane bunu zaten yapmalı idi.
kodu yazarsan daha açıklayıcı olabilir.
mr1yh1 hatta değil   Alıntı Yaparak Yanıtla
Eski 05/04/2007, 09:36   #3 (permalink)
Üye
 
aysila Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 06/2005
Mesaj: 73
Varsayılan

Kodları kolaylık olsun diye sadeleştirdim. İstenirse komplede yollıyabilirim.

Bu ilgili nesneyi olusturdugum ana kod
Kod:
public class form_gor extends JFrame implements ActionListener{
    
  	.....
   yazdirici yazdir;
   PageFormat pageFormat;
   PrinterJob pj;
   
   public form_gor(Connection conn, int hedef, int ay){
      
	  ........
      yazdir=new yazdirici(conn, hedef, ay);
      //yazdir.setBounds(0,0,590,830);
      JScrollPane sp=new JScrollPane(yazdir);
      sp.setBounds(0, 0, 590, 500);
      add(sp);
      
      pj=PrinterJob.getPrinterJob();
      pageFormat=pj.defaultPage();
      Paper paper=pageFormat.getPaper();
      paper.setImageableArea(0,0, 590, 830);
      paper.setSize(590, 830);
      pageFormat.setPaper(paper);
      
   }
       
   ...........
   ...........
}
İlgili sınıfta budur:
Kod:
class yazdirici extends JComponent implements Printable{
    
   ..................
   ..................
    
   public yazdirici(Connection conn, int hedef, int ay){
       
       //this.setBounds(0, 0, 530, 860);
       this.setSize(590,830);
       //this.setAlignmentY(860);
       this.conn=conn;
       this.hedef_id=hedef;
       this.ay=ay;
       
      ...........................
    }
   
    
    public void paintComponent(Graphics g){
       g2=(Graphics2D) g;
       f=new Font("Arial", Font.PLAIN, 12);
       g2.setFont(f);
       
       if(fm==null){
           ust=(BufferedImage)createImage(590, 224);
           orta =(BufferedImage)createImage(590, 522);
           alt=(BufferedImage)createImage(590, 102);
           
           fm=g2.getFontMetrics();
           bl=fm.getAscent();
           fh=bl+ fm.getDescent();
           bosluk=fm.stringWidth(" ");
           for(int i=0; i<8;i++){
                satirlara_bol(text[i]);
           }
           ust_hazirla();
       }
       
       update(g2);
   }
    
   public void update(Graphics2D g){ 
           
       orta_hazirla();
       alt_hazirla();
       g.clearRect(0,0, 590, 830);
       g.setFont(f);
       g.drawImage( ust, 0,0, this);
       g.drawImage( orta, 0, 224, this);
       g.drawImage(alt, 0,746, this);
   }
   

   
  
   
   public int print(Graphics g, PageFormat pf, int pageIndex){
        if(pageIndex>=sayfaAdedi)
            return NO_SUCH_PAGE;
        ......................
        return PAGE_EXISTS;
   }
 
}
Teşekkür Ederim.
aysila hatta değil   Alıntı Yaparak Yanıtla
Eski 05/04/2007, 13:23   #4 (permalink)
Eski Cevizci
 
mr1yh1 Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 04/2005
Yer: samsun
Mesaj: 1,163
Varsayılan

yazdirici sınıfının,
JComponent sınıfının getPreferredSize methodu ile ( override )
kendi boyutunu göndermesini deneyebilirsin.
mr1yh1 hatta değil   Alıntı Yaparak Yanıtla
Eski 05/04/2007, 14:24   #5 (permalink)
Üye
 
aysila Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 06/2005
Mesaj: 73
Varsayılan

Teşekkür Ederim. Sorunum çözüldü.
aysila hatta değil   Alıntı Yaparak Yanıtla
Cevapla

Bookmarks

Seçenekler

Mesaj Yazma Hakları
Yeni mesajgöndermezsiniz
Cevap yazamazsınız
Dosya ekleyemezsiniz
Mesajınızı düzenleyemezsiniz

BB code is Açık
[IMG] kodu Açık
HTML kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık

Benzer Konular
Konu Konuyu açana göre Forum Cevap En Son Mesaj
Sablon Sınıfı HunTER PHP 4 14/02/2008 05:27
Javascript nesnesini yazdirma myavuzselim Javascript / DHTML / Ajax 3 23/12/2007 07:02
WebBrowser nesnesine içindeki textlere bilgi girişi lazozcan Pascal / Delphi / Delphi.NET 2 23/01/2007 03:58
CDONT nesnesini kullanarak nasıl mail yollanırr. Yardımm muratatak77 ASP 5 30/11/2004 13:56
Template Sınıfı HunTER PHP 1 22/10/2003 20:11


Forum saati Türkiye saatine göredir. GMT +3. Şu anda saat 15:32.

Reklamlar & Desteklenenler
Hassas Valf | Hassas Kaplama | Antalyamız | Gazete | Ticari Bilişim | Hakan Müştak | Rüya Tabirleri | Kadın | Hastalıklar | Cepte msn ve e-posta | Webmaster | Antalya Aupair | Turkish Property Antalya | Forum | Chat | Perde | Adsl | Araba | bolindir.com | guncelle.com | livescore | Web Tasarım | evden eve nakliyat | forum | evden eve | sohbet | Resimcim| Kalifiye İnsan Kaynakları | Web Tasarım | Oyun | Yusuf KOÇ | Akın Yorulmaz | şiir | UFO | Web Tasarım | Oyunlar | Canlı Tv |


Forum Yazılımı: vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright ©2001 - 2008, Ceviz.net