Читати більше
ПРАКТИКА ПРОГРАМУВАННЯ МОВОЮ JAVA
Робота з бібліотекою awt.* - графічний інтерфейс програми Цифрова фотографія
(проєкт StudioDigitalPhotoApp)
//------------------------------------------------------------------------
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.io.*;
public class StudioDigitalPhotoApp {
public static void main(String[] args) throws FileNotFoundException {
new StudioDigitalPhoto();
}
private static class StudioDigitalPhoto extends Frame implements
WindowListener {
@Override
public void windowOpened(WindowEvent e) {
}
@Override
public void windowClosing(WindowEvent e) {
dispose();
System.exit(0);
}
@Override
public void windowClosed(WindowEvent e) {
}
@Override
public void windowIconified(WindowEvent e) {
}
@Override
public void windowDeiconified(WindowEvent e) {
}
@Override
public void windowActivated(WindowEvent e) {
}
@Override
public void windowDeactivated(WindowEvent e) {
}
public String ms,t,z, text;
public int RH,RW,minx,miny,maxx,maxy,cx,cy,dx,dy;
public int x,y,x1,y1,x2,y2,x3,y3,x4,y4;
public float wt=1.5f;
public JTextField input=new JTextField("1");
public JButton button1=new JButton("OK");
public JRadioButton rad1=new JRadioButton("9x12");
public JRadioButton rad2=new JRadioButton("10x15");
public JRadioButton rad3=new JRadioButton("18x24");
public Image pic;
public double cena,sum;
public int counter;
public void paint(Graphics g)
{
Dimension rc=getSize();
Insets in=getInsets();
RH=rc.width;
RW=rc.height;
minx=in.left;
maxx=RH-in.right;
miny=in.top;
maxy=RW-in.bottom;
cx=Math.abs(maxx-minx)/2;
cy=Math.abs(maxy-miny)/2;
dx=dy=25;
g.setColor(new Color(236, 236, 236));
g.fillRect(0,0,maxx,maxy);
g.setColor(new Color(0, 0, 0));
text="Формати фото: ";
g.setFont(new Font("Trebuchet Ms",Font.BOLD,24));
g.drawString(text,minx+70,miny+35);
rad1.setBounds(minx+70,miny+50,100,30);
pic=new ImageIcon("res\\9x12.jpg").getImage();
g.drawImage(pic,minx+70,miny+50,null);
rad2.setBounds(minx+70,miny+90,100,30);
pic=new ImageIcon("res\\10x15.jpg").getImage();
g.drawImage(pic,minx+70,miny+90,null);
rad3.setBounds(minx+70,miny+130,100,30);
pic=new ImageIcon("res\\18x24.jpg").getImage();
g.drawImage(pic,minx+70,miny+130,null);
text="Кількість знімків:";
g.setFont(new Font("Trebuchet Ms",Font.BOLD,24));
g.drawString(text,minx+70,miny+190);
input.setBounds(minx+275,miny+168,100,30);
pic=new ImageIcon("res\\input.jpg").getImage();
g.drawImage(pic,minx+275,miny+168,null);
button1.setBounds(minx+70,miny+210,100,30);
pic=new ImageIcon("res\\ok.jpg").getImage();
g.drawImage(pic,minx+70,miny+210,null);
Font fnt=new Font("Trebuchet Ms",Font.BOLD,24);
rad1.setFont(fnt);
rad2.setFont(fnt);
rad3.setFont(fnt);
input.setFont(fnt);
button1.setFont(fnt);
this.setLayout(null);
this.add(rad1);
this.add(rad2);
this.add(rad3);
this.add(input);
this.add(button1);
this.setVisible(true);
ButtonGroup group=new ButtonGroup();
group.add(rad1);
group.add(rad2);
group.add(rad3);
rad1.setSelected(true);
rad2.setSelected(false);
rad3.setSelected(false);
g.setFont(new Font("Trebuchet Ms",Font.BOLD,24));
text="Ціна: 8.5 грн";
g.drawString(text,minx+70,miny+270);
text="Кількість: 1 шт";
g.drawString(text,minx+70,miny+300);
text="Вартість замовлення: 8.5 грн";
g.drawString(text,minx+70,miny+330);
button1.addActionListener(new ButtonListEvent());
}
public StudioDigitalPhoto() throws FileNotFoundException {
super("Цифрова фотографія");
addWindowListener(this);
setLayout(null);
setLocation(80,5);
setSize(600,400);
this.setResizable(false);
show();
}
private class ButtonListEvent implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
counter= Integer.parseInt(input.getText());
if(rad1.isSelected()) cena=8.5f;
else if(rad2.isSelected()) cena=10.0f;
else if(rad3.isSelected()) cena=15.5f;
sum=counter*cena;
/*Graphics g = null;
g.setFont(new Font("Trebuchet Ms",Font.BOLD,24));
text="Ціна: "+cena+" грн";
g.drawString(text,minx+70,miny+270);
text="Кількість: "+counter+" шт";
g.drawString(text,minx+70,miny+300);
text="Вартість замовлення: "+sum+" грн";
g.drawString(text,minx+70,miny+330);*/
}
}
}
}
Умови використання матеріалів сайту
Використання матеріалів можливе лише за умови активного гіперпосилання на UaModna ( див. Правила* ). Для генерації коду посилання натисніть на кнопку
Думки, позиції, уподобання та заклики, опубліковані на нашому сайті, є власністю авторів і можуть не співпадати з поглядами редакції uamodna.com
Читати більше
Читати більше
Читати більше