Salve ho due classi OperationClass e PanelClass.
Il mio problema è che non riesco ad utilizzare il valore di
valoriconstants calcolati nella funzione getSlider() di PanelClass
nella classe OperationClass dove sbaglio????Un'altra cosa
come fare a capire quando un JButton e premuto o meno??GRAZIE
codice:public class PanelClass extends JInternalFrame implements ActionListener{ public JInternalFrame pannello; private JSlider slider; private JPanel mainpanel,labelpanel; protected double valoriconstants; protected JButton confermaluminosita; public PanelClass(){ } public JInternalFrame pannelloLuminosita(){ pannello = new JInternalFrame("Luminosità", true, true, false, false); pannello.setSize(300, 150); mainpanel = new JPanel(); mainpanel.setLayout(new BorderLayout()); labelpanel = new JPanel(); labelpanel.setBorder(BorderFactory.createLineBorder(Color.black)); JLabel lblpannello = new JLabel(" Modifica i parametri di luminosità spostando la barra"); labelpanel.setBackground(Color.white); lblpannello.setHorizontalAlignment(JLabel.CENTER); labelpanel.add(lblpannello); slider = new JSlider(JSlider.HORIZONTAL,-100,100,0); slider.setMaximum(100); slider.setMinimum( -100); Hashtable labelTable = new Hashtable(); labelTable.put(new Integer( -100), new JLabel("Scuro")); labelTable.put(new Integer(100), new JLabel("Chiaro")); slider.setMajorTickSpacing(30); slider.setPaintLabels(true); mainpanel.add(labelpanel, BorderLayout.NORTH); mainpanel.add(slider, BorderLayout.CENTER); confermaluminosita = new JButton("CONFERMA"); confermaluminosita.setSize(50, 30); confermaluminosita.addActionListener(this); mainpanel.add(confermaluminosita, BorderLayout.SOUTH); pannello.getContentPane().add(mainpanel); pannello.setVisible(true); return pannello; } public void actionPerformed(ActionEvent ae) { if(ae.getSource() == confermaluminosita){ valoriconstants = getSlider(); } } public double getSlider(){ double constants[] = new double[1]; constants[0] = (double) slider.getValue(); return constants[0]; } public class OperationClass{ private RenderedImage immaginecreate; private PanelClass pannelli = new PanelClass(); private double constants; public OperationClass() { } public RenderedImage Inverti(RenderedImage immagine){ if(immagine != null) { ParameterBlock pb = new ParameterBlock(); pb.addSource(immagine); immaginecreate = JAI.create("invert", pb, null); } return immaginecreate; } public RenderedImage Luminosita(RenderedImage immagine) { if(immagine != null) { ParameterBlock pb = new ParameterBlock(); pb.addSource(immagine); System.out.print(pannelli.valoriconstants); pb.add(pannelli.valoriconstants); immagine = JAI.create("addconst",pb,null); } return immagine; } }

Rispondi quotando