Merhaba, paintComponent ile yaptigim resimleri ve sekilleri nasil Framein icine yerlestirebilirim,ayrica bir panele ihtiyacim varmidir? panel.add(new miniCircle()); seklinde deniyorum ama birturlu cikmadi framede Tesekkurler.

package EventDriven; import javax.swing.*;

import GUI.Graphics.Mixed.DisplayCheckerBoard;

import java.awt.*; public class MoveTheBall extends JFrame {

private JButton jbtLeft ;
private JButton jbtRight;
private JButton jbtUp;
private JButton jbtDown;

public MoveTheBall(){

    JPanel panel = new JPanel();
    setLayout(new BorderLayout(1,4));
    add(panel,BorderLayout.SOUTH);
    jbtLeft=new JButton("Left");     panel.add(jbtLeft);
    jbtRight=new JButton("Right"); panel.add(jbtRight);
    jbtUp=new JButton("Up");         panel.add(jbtUp);
    jbtDown=new JButton("Down");panel.add(jbtDown);

    panel.add(new miniCircle());

}

class miniCircle extends JPanel{
    @Override
        protected void paintComponent(Graphics g){
            super.paintComponents(g);
            g.setColor(Color.BLACK);
            g.fillOval(80,80, 80,80);

        }
    }

public static void main(String[] args) {
    JFrame frame = new MoveTheBall();
    frame.setSize(300, 300);
    //frame.pack();
    //frame.add(new MoveTheBall());
    frame.setTitle("Move Ball");
    frame.setLocationRelativeTo(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);

}

}

soruldu: 08 Haz '13, 17:16

Yigit%20Htplu's gravatar image

Yigit Htplu
787912
cevap kabul oranı: 0%

değiştirildi: 10 Haz '13, 03:19

CemIkta's gravatar image

CemIkta ♦
19.9k29125190


Oncelikle Swing Layout ogrenmeniz isleri cok daha kolaylastirir. Linkte cok guzel layout anlatimlari var. Sizin kodda buttonlari bir panele yada toolbar'a grafik objesini ise baska bir panele ekleyip, butun create islemleri bittiginde JFrame'e eklemeniz gerekiyor.


    public MoveTheBall() {
        // jframe layout
        setLayout(new BorderLayout(1,4));

// buttonlar icin panel
        JPanel buttonPanel = new JPanel();
        jbtLeft = new JButton("Left");
        jbtRight = new JButton("Right");
        jbtUp = new JButton("Up");
        jbtDown = new JButton("Down");

// buttonlari panele ekle
        buttonPanel.add(jbtLeft);
        buttonPanel.add(jbtRight);
        buttonPanel.add(jbtUp);
        buttonPanel.add(jbtDown);

// butun nesneleri alan panel
        JPanel panel = new JPanel(new BorderLayout());
        panel.add(BorderLayout.CENTER, new miniCircle());
        panel.add(BorderLayout.SOUTH, buttonPanel);

// create islemleri bitti, jframe e ekle
        add(panel, BorderLayout.CENTER);
    }

public static void main(String[] args) {
        JFrame frame = new MoveTheBall();
        frame.setSize(300, 300);
        frame.setTitle("Move Ball");
        frame.setLocationRelativeTo(null);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);

}

permanent link

cevaplandı: 10 Haz '13, 03:46

CemIkta's gravatar image

CemIkta ♦
19.9k29125190
cevap kabul oranı: 36%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×1,079
×79
×15

Soruldu: 08 Haz '13, 17:16

Görüntüleme: 843 kez

Son güncelleme: 10 Haz '13, 03:46

powered by BitNami OSQA