изменить изображение в Jlabel - PullRequest
0 голосов
/ 29 ноября 2018

Как изменить изображение в метке, нажав на строку таблицы?

У меня есть код.Во-первых, слушатель действия из jtable.

private void jTable2MouseClicked(java.awt.event.MouseEvent evt) {

    //jButton1.setEnabled(true);
    Database base =  new Database();
    model =  (DefaultTableModel)jTable2.getModel();
    int selectedRowIndex = jTable2.getSelectedRow();

    //find picture in forlder and change jLabel2 for image 
    base.findImageDerictory(model.getValueAt(selectedRowIndex, 1).toString(), jLabel2 );
}

После этого я пытаюсь получить свое изображение из папки, но проблема в том, что изображение переключается так медленно.

public void findImageDerictory(String name, JLabel jLabel2){
    String pictureName = null;

    try
    {
        data = getmyConnection();
        st = data.createStatement();
        myResults = st.executeQuery( "SELECT Picture  FROM students_center WHERE  Name = '" + name + "'" );

        while ( myResults.next() )
        {
            //COPY PATH IN pictureName 
            pictureName = myResults.getString( 1 );
        }
        //SWITH TO ANOTHER PICTURE
        File sourceFile = new File( pictureName );

        ImageIcon imageIcon;
        imageIcon = new ImageIcon( getClass().getResource( "/newdatabase/images/" + sourceFile.getName() ) );
        Image image = imageIcon.getImage(); // transform it
        Image newimg = image.getScaledInstance( 220, 220, java.awt.Image.SCALE_SMOOTH ); // scale it the smooth way
        imageIcon = new ImageIcon( newimg );
        jLabel2.setIcon( imageIcon );

        myResults.close();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...