Witajcie,
Próbuję przeskalować panel w którym jest zarówno grafika, jak i elementy Swing. Niestety jest problem z tymi ostatnimi.
Przestają one prawidło się wyświetlać. Pewnie robię coś źle, ale nie wiem co i jak to poprawić.
Zla zilustrowania problemu załączam kod; jest tu kwadrat, przycisk i pole tekstowe, które chcę powiększyć
Bardzo proszę o pomoc:
import java.awt.EventQueue;
import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Test{
public static void main(String args[]){
EventQueue.invokeLater(new Runnable(){public void run(){
JFrame ramka=new JFrame();
ramka.setSize(300,200);
ramka.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ramka.add(new panel());
ramka.setVisible(true);
}});
}
}
class panel extends JPanel{
panel(){
add(new JTextField("Test"));
add(new JButton("Test"));
}
public void paintComponent(Graphics g){
Graphics2D g2=(Graphics2D)g;
g2.scale(1.5, 1.5);
g2.drawRect(50,50,10,10);
}
}