Vizsgafeladat megoldások

Előző téma megtekintése Következő téma megtekintése Go down

Vizsgafeladat megoldások

Témanyitás  gab on 2009-06-05, 21:45

Kód:

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.AdjustmentEvent;
import java.awt.event.AdjustmentListener;
import javax.swing.JColorChooser;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JScrollBar;

public class Acs extends JFrame
{
    private JScrollBar sbRed;
    private JScrollBar sbGreen;
    private JScrollBar sbBlue;

    private Container contentPane;

    private int red = 173;
    private int green = 255;
    private int blue = 47;

    public Acs()  {
        Toolkit tk = Toolkit.getDefaultToolkit();
        contentPane = getContentPane();

        setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

        setTitle("A csoport");
        Dimension screensize = tk.getScreenSize();
        setBounds(50, 50, screensize.width - 100, screensize.height - 100);
        validate();

        setBackgroundColor();

        setJMenuBar(createMenuBar());

        sbRed = new JScrollBar(JScrollBar.HORIZONTAL, 173, 10, 0, 265);
        sbRed.addAdjustmentListener(new AdjustmentListener() {
            public void adjustmentValueChanged(AdjustmentEvent e) {
                red = sbRed.getValue();
                setBackgroundColor();
            }
        });
        sbRed.setPreferredSize(new Dimension(screensize.width, 30));
        contentPane.add(sbRed, BorderLayout.NORTH);

        sbGreen = new JScrollBar(JScrollBar.HORIZONTAL, 255, 10, 0, 265);
        sbGreen.addAdjustmentListener(new AdjustmentListener() {
            public void adjustmentValueChanged(AdjustmentEvent e) {
                green = sbGreen.getValue();
                setBackgroundColor();
            }
        });
        sbGreen.setPreferredSize(new Dimension(screensize.width, 30));
        JPanel gPanel = new JPanel();
        gPanel.setOpaque(false);
        gPanel.add(sbGreen);
        contentPane.add(gPanel, BorderLayout.CENTER);

        sbBlue = new JScrollBar(JScrollBar.HORIZONTAL, 47, 10, 0, 265);
        sbBlue.addAdjustmentListener(new AdjustmentListener() {
            public void adjustmentValueChanged(AdjustmentEvent e) {
                blue = sbBlue.getValue();
                setBackgroundColor();
            }
        });
        sbBlue.setPreferredSize(new Dimension(screensize.width, 30));
        contentPane.add(sbBlue, BorderLayout.SOUTH);

        pack();
    }

    private JMenuBar createMenuBar()    {
        JMenuBar menuBar = new JMenuBar();

        JMenu fileMenu = new JMenu("File");
        menuBar.add(fileMenu);

        JMenuItem backgroundMenuItem = new JMenuItem("Hatter");
        backgroundMenuItem.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                Color c = getColorChoice();

                red = c.getRed();
                green = c.getGreen();
                blue = c.getBlue();

                setBackgroundColor();

                sbRed.setValue(red);
                sbGreen.setValue(green);
                sbBlue.setValue(blue);
            }
        });
        fileMenu.add(backgroundMenuItem);

        JMenuItem exitMenuItem = new JMenuItem("Kilep");
        exitMenuItem.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                exit();
            }
        });
        fileMenu.add(exitMenuItem);

        return menuBar;
    }

    private Color getColorChoice()  {
        Color c = JColorChooser.showDialog(this, "Válasszon hátterszínt", createBackgroundColor());

        return c;
    }

    private void setBackgroundColor()  {
        contentPane.setBackground(createBackgroundColor());
    }

    private Color createBackgroundColor()  {
        return new Color(red, green, blue);
    }

    private void exit() {
        System.exit(0);
    }

    public static void main(String args[]) {
        new Acs().setVisible(true);
    }
}
avatar
gab
Admin

Hozzászólások száma : 199
Registration date : 2007. Dec. 07.

Felhasználó profiljának megtekintése http://gabs.no-ip.org/

Vissza az elejére Go down

A csoport

Témanyitás  Füfü on 2009-06-08, 01:16

Kód:

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class Vizsga {
  public static void main (String args[]) {
    new Feladat ();
  }
}

class Feladat extends JFrame implements ActionListener, AdjustmentListener, ComponentListener {
  private Container cp = getContentPane(); //visszaadja a keret tartalompaneljet (JFrame osztaly)
  private Toolkit tk = Toolkit.getDefaultToolkit(); //Toolkit osztaly, kornyezetfuggo metodusok kepernyokezeleshez, nyomtatashoz
  private int mx, my;

  // Scrollbarhoz
  private JScrollBar sbCR,sbCG,sbCB;

  // Menühöz
  private JMenuBar mb;
  private JMenu mFile;
  private JMenuItem miExit, miHatter ;
  // -Menühöz-


  public Feladat() {
    setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); // mi tortenjen, megprobaljuk becsukni a keretet (JFrame)

    Dimension scrSize = tk.getScreenSize();
    mx = scrSize.width;
    my = scrSize.height;
    setBounds(50, 50, mx-100, my-100);


    setTitle("A csoport");
//    cp.setLayout(new GridLayout(3,1));
    cp.setLayout(new FlowLayout());
    cp.setBackground(new Color(173, 255, 47));


    // Menü létrehozása
    setJMenuBar (mb = new JMenuBar());
    mb.add(mFile = new JMenu("File"));
    mFile.add(miExit = new JMenuItem("Exit", 'E'));
    mFile.add(miHatter = new JMenuItem("Háttér", 'H'));
    miExit.addActionListener(this);
    miHatter.addActionListener(this);
    sbCR = new JScrollBar(JScrollBar.HORIZONTAL, 173, 10, 0, 265);
    sbCR.setPreferredSize(new Dimension(mx-110, 30));
    sbCR.addAdjustmentListener(this);
    sbCG = new JScrollBar(JScrollBar.HORIZONTAL, 255, 10, 0, 265);
    sbCG.setPreferredSize(new Dimension(mx-110, 30));
    sbCG.addAdjustmentListener(this);
    sbCB = new JScrollBar(JScrollBar.HORIZONTAL, 47, 10, 0, 265);
    sbCB.setPreferredSize(new Dimension(mx-110, 30));
    sbCB.addAdjustmentListener(this);
    // Scrollbarnak
    cp.removeAll();
    cp.add(sbCR,"North");
    cp.add(sbCG,"Center");
    cp.add(sbCB,"South");


  show();
  }


  public void actionPerformed (ActionEvent ev) {

      // Kilépés menü
      if (ev.getSource() == miExit) {
        System.exit(0);
      }

      if (ev.getSource() == miHatter)
          cp.setBackground(JColorChooser.showDialog(cp, "Háttérszín", cp.getBackground()));

    cp.validate();
    }

    public void adjustmentValueChanged (AdjustmentEvent e) {
        cp.setBackground(new Color(sbCR.getValue(),sbCG.getValue(),sbCB.getValue()));
        System.out.println("OK");

    }


  public void componentResized (ComponentEvent ev) {
    }
  public void componentMoved (ComponentEvent ev) {
    }
  public void componentShown (ComponentEvent ev) {
    }
  public void componentHidden (ComponentEvent ev) {
    }
  }

class WindowFigyi extends WindowAdapter {
  public void wondowClosing (WindowEvent ev) {
    System.exit(0);
    }
  }

avatar
Füfü
Admin

Hozzászólások száma : 158
Registration date : 2007. Dec. 07.

Felhasználó profiljának megtekintése http://gdfszkk.nice-forum.net

Vissza az elejére Go down

Előző téma megtekintése Következő téma megtekintése Vissza az elejére


 
Permissions in this forum:
Nem válaszolhatsz egy témára ebben a fórumban.