Sadece bir düğmeye tıklandığında uygun ses dosyasını çalan basit bir gitar Tuner uygulaması yapmaya çalışıyorum. Bir gitarın bir kafasının görüntüsünü JFrame'e yerleştirmeye çalışıyorum ama bunun için Oracle belgelerini anlamakta biraz sorun yaşıyorum. Birisi bana resmimin bu kodda neden üretmediğini açıklayabilir mi?görüntüleri
p.s. Düğmeler için sınırın yerleştirilmesinin belirli bir yerde ayarlanmadığını ve hiçbir ses kodu ayarlanmadığını biliyorum. Öncelikle düğmelerdeki ön ayar görüntüsü üzerindeki uygun ayar pimi üzerine yerleştirmek istedim.
Buraya herhangi bir ipucu veya bilgi için şimdiden teşekkür ederiz!
package guitartuner;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.text.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
public class GuitarTuner extends JFrame{
private JFrame mainFrame;
private JLabel EJLabel, AJLabel, DJLabel, GJLabel, BJLabel, eJLabel, guitarJLabel,
bassJLabel, loopJLabel;
private JPanel controlPanel;
private JButton EButton, AButton, DButton, GButton, BButton, eButton;
public class LoadImageApp extends Component{
BufferedImage img;
public void paint(Graphics g){
g.drawImage(img, 0, 0, null);
}
public LoadImageApp(){
try{
img = ImageIO.read(new File("headstock.jpg"));
} catch (IOException e){
}
}
public Dimension getPreferredSize() {
if (img == null) {
return new Dimension(100,100);
} else {
return new Dimension(img.getWidth(null), img.getHeight(null));
}
}
}
public GuitarTuner(){
createUserInterface();
}
public void createUserInterface(){
JFrame f = new JFrame("Guitar Tuner");
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
f.add(new LoadImageApp());
f.pack();
f.setVisible(true);
guitarJLabel = new JLabel();
guitarJLabel.setBounds(16, 16, 90, 21);
guitarJLabel.setText("Guitar");
f.add(guitarJLabel);
EButton = new JButton();
EButton.setBounds(20, 20, 50, 50);
EButton.setText("E");
f.add(EButton);
AButton = new JButton();
AButton.setBounds(40, 40, 50, 50);
AButton.setText("A");
f.add(AButton);
DButton = new JButton();
DButton.setBounds(60, 60, 50, 50);
DButton.setText("D");
f.add(DButton);
GButton = new JButton();
GButton.setBounds(20, 100, 50, 50);
GButton.setText("G");
f.add(GButton);
BButton = new JButton();
BButton.setBounds(40, 100, 50, 50);
BButton.setText("B");
f.add(BButton);
eButton = new JButton();
eButton.setBounds(60, 100, 50, 50);
eButton.setText("e");
f.add(eButton);
setTitle("Aaron's Awesome Guitar Tuner");
setSize (500, 500);
setVisible(true);
}
public static void main(String[] args) {
GuitarTuner application = new GuitarTuner();
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Bu işe yaradı! Çok teşekkür ederim! – Staver