import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JPanel;
/**
*
* @author Danielcod
*/
public class FaceJFrame extends javax.swing.JFrame {
import java.awt.Graphics;
import javax.swing.JPanel;
/**
*
* @author Danielcod
*/
public class FaceJFrame extends javax.swing.JFrame {
public FaceJFrame() {
initComponents();
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
initComponents();
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
ExpressionGroup = new javax.swing.ButtonGroup();
EyebrowGroup = new javax.swing.ButtonGroup();
NoseGroup = new javax.swing.ButtonGroup();
FacePanel = new javax.swing.JPanel();
ButtonPanel = new javax.swing.JPanel();
Happy = new javax.swing.JRadioButton();
Sad = new javax.swing.JRadioButton();
Neutral = new javax.swing.JRadioButton();
Eyebrows = new javax.swing.JRadioButton();
NoEyebrows = new javax.swing.JRadioButton();
Nose = new javax.swing.JRadioButton();
jRadioButton2 = new javax.swing.JRadioButton();
EyebrowGroup = new javax.swing.ButtonGroup();
NoseGroup = new javax.swing.ButtonGroup();
FacePanel = new javax.swing.JPanel();
ButtonPanel = new javax.swing.JPanel();
Happy = new javax.swing.JRadioButton();
Sad = new javax.swing.JRadioButton();
Neutral = new javax.swing.JRadioButton();
Eyebrows = new javax.swing.JRadioButton();
NoEyebrows = new javax.swing.JRadioButton();
Nose = new javax.swing.JRadioButton();
jRadioButton2 = new javax.swing.JRadioButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
FacePanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
javax.swing.GroupLayout FacePanelLayout = new javax.swing.GroupLayout(FacePanel);
FacePanel.setLayout(FacePanelLayout);
FacePanelLayout.setHorizontalGroup(
FacePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 428, Short.MAX_VALUE)
);
FacePanelLayout.setVerticalGroup(
FacePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 317, Short.MAX_VALUE)
);
FacePanel.setLayout(FacePanelLayout);
FacePanelLayout.setHorizontalGroup(
FacePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 428, Short.MAX_VALUE)
);
FacePanelLayout.setVerticalGroup(
FacePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 317, Short.MAX_VALUE)
);
ExpressionGroup.add(Happy);
Happy.setSelected(true);
Happy.setText("Happy");
Happy.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
HappyActionPerformed(evt);
}
});
Happy.setSelected(true);
Happy.setText("Happy");
Happy.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
HappyActionPerformed(evt);
}
});
ExpressionGroup.add(Sad);
Sad.setText("Sad");
Sad.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
SadActionPerformed(evt);
}
});
Sad.setText("Sad");
Sad.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
SadActionPerformed(evt);
}
});
ExpressionGroup.add(Neutral);
Neutral.setText("Neutral");
Neutral.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
NeutralActionPerformed(evt);
}
});
Neutral.setText("Neutral");
Neutral.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
NeutralActionPerformed(evt);
}
});
EyebrowGroup.add(Eyebrows);
Eyebrows.setText("Eyebrows");
Eyebrows.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
EyebrowsActionPerformed(evt);
}
});
Eyebrows.setText("Eyebrows");
Eyebrows.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
EyebrowsActionPerformed(evt);
}
});
EyebrowGroup.add(NoEyebrows);
NoEyebrows.setText("No Eyebrows");
NoEyebrows.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
NoEyebrowsActionPerformed(evt);
}
});
NoEyebrows.setText("No Eyebrows");
NoEyebrows.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
NoEyebrowsActionPerformed(evt);
}
});
NoseGroup.add(Nose);
Nose.setText("Nose");
Nose.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
NoseActionPerformed(evt);
}
});
Nose.setText("Nose");
Nose.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
NoseActionPerformed(evt);
}
});
NoseGroup.add(jRadioButton2);
jRadioButton2.setText("No Nose");
jRadioButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jRadioButton2ActionPerformed(evt);
}
});
jRadioButton2.setText("No Nose");
jRadioButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jRadioButton2ActionPerformed(evt);
}
});
javax.swing.GroupLayout ButtonPanelLayout = new javax.swing.GroupLayout(ButtonPanel);
ButtonPanel.setLayout(ButtonPanelLayout);
ButtonPanelLayout.setHorizontalGroup(
ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(ButtonPanelLayout.createSequentialGroup()
.addGap(44, 44, 44)
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(Neutral)
.addGroup(ButtonPanelLayout.createSequentialGroup()
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(Happy)
.addComponent(Sad))
.addGap(63, 63, 63)
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(NoEyebrows)
.addComponent(Eyebrows))
.addGap(58, 58, 58)
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(Nose)
.addComponent(jRadioButton2))))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
ButtonPanelLayout.setVerticalGroup(
ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ButtonPanelLayout.createSequentialGroup()
.addContainerGap(19, Short.MAX_VALUE)
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(ButtonPanelLayout.createSequentialGroup()
.addComponent(Happy)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(Sad))
.addGroup(ButtonPanelLayout.createSequentialGroup()
.addComponent(Eyebrows)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(NoEyebrows)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ButtonPanelLayout.createSequentialGroup()
.addComponent(Nose)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jRadioButton2)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(Neutral)
.addContainerGap())
);
ButtonPanel.setLayout(ButtonPanelLayout);
ButtonPanelLayout.setHorizontalGroup(
ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(ButtonPanelLayout.createSequentialGroup()
.addGap(44, 44, 44)
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(Neutral)
.addGroup(ButtonPanelLayout.createSequentialGroup()
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(Happy)
.addComponent(Sad))
.addGap(63, 63, 63)
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(NoEyebrows)
.addComponent(Eyebrows))
.addGap(58, 58, 58)
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(Nose)
.addComponent(jRadioButton2))))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
ButtonPanelLayout.setVerticalGroup(
ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ButtonPanelLayout.createSequentialGroup()
.addContainerGap(19, Short.MAX_VALUE)
.addGroup(ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ButtonPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(ButtonPanelLayout.createSequentialGroup()
.addComponent(Happy)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(Sad))
.addGroup(ButtonPanelLayout.createSequentialGroup()
.addComponent(Eyebrows)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(NoEyebrows)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, ButtonPanelLayout.createSequentialGroup()
.addComponent(Nose)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jRadioButton2)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(Neutral)
.addContainerGap())
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(ButtonPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addComponent(FacePanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(FacePanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(ButtonPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(12, Short.MAX_VALUE))
);
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(ButtonPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addComponent(FacePanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(FacePanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(ButtonPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(12, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
}// </editor-fold>
private void HappyActionPerformed(java.awt.event.ActionEvent evt) {
Graphics HappyGraphic = FacePanel.getGraphics();
HappyGraphic.setColor(Color.white);
HappyGraphic.fillRect(0, 0, FacePanel.getWidth(), FacePanel.getHeight());
HappyGraphic.setColor(Color.black);
HappyGraphic.drawOval(120, 20, 200, 275);
HappyGraphic.drawOval(150, 100, 30, 40);
HappyGraphic.drawOval(250, 100, 30, 40);
HappyGraphic.drawArc(170, 170, 80, 60, 240, 90);
FacePanel.paintComponents(HappyGraphic);
}
Graphics HappyGraphic = FacePanel.getGraphics();
HappyGraphic.setColor(Color.white);
HappyGraphic.fillRect(0, 0, FacePanel.getWidth(), FacePanel.getHeight());
HappyGraphic.setColor(Color.black);
HappyGraphic.drawOval(120, 20, 200, 275);
HappyGraphic.drawOval(150, 100, 30, 40);
HappyGraphic.drawOval(250, 100, 30, 40);
HappyGraphic.drawArc(170, 170, 80, 60, 240, 90);
FacePanel.paintComponents(HappyGraphic);
}
private void NeutralActionPerformed(java.awt.event.ActionEvent evt) {
Graphics NeutralGraphic = FacePanel.getGraphics();
NeutralGraphic.setColor(Color.white);
NeutralGraphic.fillRect(0, 0, FacePanel.getWidth(), FacePanel.getHeight());
NeutralGraphic.setColor(Color.black);
NeutralGraphic.drawOval(120, 20, 200, 275);
NeutralGraphic.drawOval(150, 100, 30, 40);
NeutralGraphic.drawOval(250, 100, 30, 40);
NeutralGraphic.drawLine(170, 220, 240, 220);
}
Graphics NeutralGraphic = FacePanel.getGraphics();
NeutralGraphic.setColor(Color.white);
NeutralGraphic.fillRect(0, 0, FacePanel.getWidth(), FacePanel.getHeight());
NeutralGraphic.setColor(Color.black);
NeutralGraphic.drawOval(120, 20, 200, 275);
NeutralGraphic.drawOval(150, 100, 30, 40);
NeutralGraphic.drawOval(250, 100, 30, 40);
NeutralGraphic.drawLine(170, 220, 240, 220);
}
private void EyebrowsActionPerformed(java.awt.event.ActionEvent evt) {
Graphics Eyebrows = FacePanel.getGraphics();
Eyebrows.drawLine(150, 90, 180, 90);
Eyebrows.drawLine(250, 90, 280, 90);
}
Graphics Eyebrows = FacePanel.getGraphics();
Eyebrows.drawLine(150, 90, 180, 90);
Eyebrows.drawLine(250, 90, 280, 90);
}
private void NoEyebrowsActionPerformed(java.awt.event.ActionEvent evt) {
Graphics Eyebrows = FacePanel.getGraphics();
Eyebrows.setColor(Color.white);
Eyebrows.drawLine(150, 90, 180, 90);
Eyebrows.drawLine(250, 90, 280, 90);
}
Graphics Eyebrows = FacePanel.getGraphics();
Eyebrows.setColor(Color.white);
Eyebrows.drawLine(150, 90, 180, 90);
Eyebrows.drawLine(250, 90, 280, 90);
}
private void NoseActionPerformed(java.awt.event.ActionEvent evt) {
Graphics Nose = FacePanel.getGraphics();
Nose.setColor(Color.BLACK);
Nose.drawOval(175, 175, 30, 20);
Nose.fillOval(175, 175, 30, 20);
}
Graphics Nose = FacePanel.getGraphics();
Nose.setColor(Color.BLACK);
Nose.drawOval(175, 175, 30, 20);
Nose.fillOval(175, 175, 30, 20);
}
private void SadActionPerformed(java.awt.event.ActionEvent evt) {
Graphics SadGraphic = FacePanel.getGraphics();
SadGraphic.setColor(Color.white);
SadGraphic.fillRect(0, 0, FacePanel.getWidth(), FacePanel.getHeight());
SadGraphic.setColor(Color.black);
SadGraphic.drawOval(120, 20, 200, 275);
SadGraphic.drawOval(150, 100, 30, 40);
SadGraphic.drawOval(250, 100, 30, 40);
SadGraphic.drawArc(170, 210, 80, 60, -180,-180 );
}
SadGraphic.setColor(Color.white);
SadGraphic.fillRect(0, 0, FacePanel.getWidth(), FacePanel.getHeight());
SadGraphic.setColor(Color.black);
SadGraphic.drawOval(120, 20, 200, 275);
SadGraphic.drawOval(150, 100, 30, 40);
SadGraphic.drawOval(250, 100, 30, 40);
SadGraphic.drawArc(170, 210, 80, 60, -180,-180 );
}
private void jRadioButton2ActionPerformed(java.awt.event.ActionEvent evt) {
Graphics Nose = FacePanel.getGraphics();
Nose.setColor(Color.WHITE);
Nose.drawOval(175, 175, 30, 20);
Nose.fillOval(175, 175, 30, 20);
}
Graphics Nose = FacePanel.getGraphics();
Nose.setColor(Color.WHITE);
Nose.drawOval(175, 175, 30, 20);
Nose.fillOval(175, 175, 30, 20);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new FaceJFrame().setVisible(true);
}
});
}
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new FaceJFrame().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JPanel ButtonPanel;
private javax.swing.ButtonGroup ExpressionGroup;
private javax.swing.ButtonGroup EyebrowGroup;
private javax.swing.JRadioButton Eyebrows;
private javax.swing.JPanel FacePanel;
private javax.swing.JRadioButton Happy;
private javax.swing.JRadioButton Neutral;
private javax.swing.JRadioButton NoEyebrows;
private javax.swing.JRadioButton Nose;
private javax.swing.ButtonGroup NoseGroup;
private javax.swing.JRadioButton Sad;
private javax.swing.JRadioButton jRadioButton2;
// End of variables declaration
}
private javax.swing.JPanel ButtonPanel;
private javax.swing.ButtonGroup ExpressionGroup;
private javax.swing.ButtonGroup EyebrowGroup;
private javax.swing.JRadioButton Eyebrows;
private javax.swing.JPanel FacePanel;
private javax.swing.JRadioButton Happy;
private javax.swing.JRadioButton Neutral;
private javax.swing.JRadioButton NoEyebrows;
private javax.swing.JRadioButton Nose;
private javax.swing.ButtonGroup NoseGroup;
private javax.swing.JRadioButton Sad;
private javax.swing.JRadioButton jRadioButton2;
// End of variables declaration
}