|
Java форум JavaTalks форум программистов
|
|
|
|
| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
Другое Имя : 16 Новичок
|
Янв 08, 2012 9:59 |
|
|
| Про специальность не ответил. Я механик (но теоретик а не инженер!). |
|
|
|
 |
al1975 : 188 Новичок
|
Янв 10, 2012 12:38 |
|
|
| Я извиняюсь,что пообещал сделать и не сделал - отца забрали в больницу 30 декабря - не до этого было..Я уже было начал делать,правда: проблемы с изменением размера изображения не решил.. |
|
|
|
 |
Другое Имя : 16 Новичок
|
Янв 10, 2012 22:59 |
|
|
О, печально, конечно ((( Здоровья отцу, бог в помощь! |
|
|
|
 |
al1975 : 188 Новичок
|
Янв 10, 2012 23:04 |
|
|
Спасибо..
У меня есть написанный код,но только размер картинки не меняеться и картинка не перетаскиваеться - могу выставить - может кто доделает,а может и я сам если будет время.. |
|
|
|
 |
Другое Имя : 16 Новичок
|
Янв 10, 2012 23:06 |
|
|
| Если можно выставьте, кто-то доделает, отлично, а если нет и у вас будет время, дополните. |
|
|
|
 |
al1975 : 188 Новичок
|
Янв 15, 2012 20:35 |
|
|
|
|
|
|
 |
Другое Имя : 16 Новичок
|
Янв 16, 2012 7:28 |
|
|
| Огромное спосибо, но сказать по правде мне, вообще, код нужен! Если можете, если не трудно выложите код пожалуйста. |
|
|
|
 |
al1975 : 188 Новичок
|
Янв 16, 2012 10:21 |
|
|
| Код: |
package javatalks;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Graphics2D;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.swing.ImageIcon;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JSlider;
import javax.swing.SwingUtilities;
import javax.swing.border.TitledBorder;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class Gui implements ActionListener,ChangeListener{
private JFrame fr;
private JPanel imagePan,controlPan;
private JComboBox box;
private JLabel lab;
private JSlider sl;
private String imageNames[];
private ImageIcon[]im;
private ImageIcon currentImIc;
private int xMstart,yMstart;
private int xLstart,yLstart;
private int xOnL,yOnL;
private int sliderValue;
private ImageIcon ii = new ImageIcon();
private BufferedImage bi;
private Graphics2D g;
public Gui() {
File f = new File("images");
if(f.exists())
imageNames = f.list();
else
imageNames = new String[1];
im = new ImageIcon[imageNames.length];
for(int i = 0;i<imageNames.length;i++)
im[i] = new ImageIcon("images/"+imageNames[i]);
currentImIc = im[0];
createGui();
}
private void createGui(){
fr = new JFrame("Example");
fr.setLayout(new BorderLayout());
imagePan = new JPanel(new BorderLayout());
controlPan = new JPanel();
fr.add(imagePan,BorderLayout.CENTER);
fr.add(controlPan,BorderLayout.SOUTH);
box = new JComboBox(imageNames);
sl = new JSlider();
sl.setValue(50);
lab = new JLabel(im[0]);
paintAndResizeImage(50);
lab.addMouseListener(new LabelMause());
lab.addMouseMotionListener(new LabelMause());
controlPan.add(box);
controlPan.add(sl);
imagePan.add(lab);
imagePan.setBorder(new TitledBorder("Image"));
imagePan.setPreferredSize(new Dimension(400,300));
controlPan.setBorder(new TitledBorder("Conrol Panel"));
box.addActionListener(this);
sl.addChangeListener(this);
fr.setSize(700,700);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
fr.setLocation((dim.width-fr.getWidth())/2, (dim.height-fr.getHeight())/2);
fr.setVisible(true);
}
class LabelMause extends MouseAdapter{
@Override
public void mouseDragged(MouseEvent e) {
lab.setLocation(e.getX()-xOnL,e.getY()-yOnL);
imagePan.repaint();
}
@Override
public void mousePressed(MouseEvent e) {
xMstart = e.getX();
yMstart = e.getY();
xLstart = lab.getX();
yLstart = lab.getY();
xOnL = xMstart - xLstart;
yOnL = yMstart - yLstart;
}
}
@Override
public void actionPerformed(ActionEvent e) {
currentImIc = im[box.getSelectedIndex()];
paintAndResizeImage(50);
sl.setValue(50);
}
@Override
public void stateChanged(ChangeEvent e) {
sliderValue = sl.getValue();
paintAndResizeImage(sliderValue);
}
private void paintAndResizeImage(int size){
size = size*10;
bi = new BufferedImage(size,size,BufferedImage.TYPE_INT_RGB);
g = bi.createGraphics();
g.drawImage(currentImIc.getImage(), 0, 0, size, size,imagePan);
ii.setImage(bi);
lab.setIcon(ii);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable(){
@Override
public void run() {
new Gui();
}
});
}
} |
|
|
|
|
 |
|
|
Страница 2 из 2 На страницу Пред. 1, 2 |
Список форумов
-> Сделайте за меня |
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|