yüklenemedi Yüklenici içinde aradığım bir yöntem kullanılarak veritabanından seçtiğim BLOB
otomatik yükleme sorunları yaşıyorum. Başka şey (bu güncelleme, resim ekleme) oturum kullanıcı başına görüntülerin otomatik alınmasıyla dışında iyi çalışıyorJLabel Görüntü Simgesi Yer tutucu her zaman kurucuda 0 değerini döndürür. Blob
Hata:.
Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Width (0) and height (0) must be non-zero
at java.awt.image.ReplicateScaleFilter.<init>(ReplicateScaleFilter.java:102)
at java.awt.image.AreaAveragingScaleFilter.<init>(AreaAveragingScaleFilter.java:77)
Benim Yöntem tanımı,
private void loadProfilePic(){
String SQL = "SELECT PROFILE_PIC from allusers_profile_picture WHERE USERID =?";
try(Connection con = DBUtil.getConnection(DBType.MYSQL);
PreparedStatement ps = con.prepareStatement(SQL);)
{
ps.setInt(1,userId);
try(ResultSet rs = ps.executeQuery();){
JOptionPane.showMessageDialog(null,profilePicJlbl.getWidth()+" "+profilePicJlbl.getHeight());
if(rs.next()){
byte[] img = rs.getBytes("PROFILE_PIC");
ImageIcon myImageIcon = new ImageIcon(img);
Image image = myImageIcon.getImage();
Image myImage = image.getScaledInstance
(profilePicJlbl.getWidth(), profilePicJlbl.getHeight(),Image.SCALE_SMOOTH);
ImageIcon finalImage = new ImageIcon(myImage);
profilePicJlbl.setIcon(finalImage);
}
} //--end of inner try
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,"Error: "+e.getMessage());
} //--end of catch
}//--end of method
Sonra onu kurucunun içine derim.
public home(int uId,String uname,String uType) {
loadProfilePic();
}
Ben 0 döndürür neden herhangi bir nedenle düşünemiyorum Ama render kadar JLabel genişliği ve yüksekliği 0 olduğunu okumuştum.
Bunu nasıl çözebilir? Sadece profil resmini yüklemek için kullanıcının ayrı bir düğmeye basmasını istemiyorum. Otomatik olmalı.
Şimdiden teşekkürler.
Evet, bileşenin genişliği ve yüksekliği, oluşturulmadan önce 0'dır. Oluşturmadan önce etiketin genişliğini neden alıyorsunuz? Niçin buna ihtiyacın var? Bu gereksinimden kurtulmak bir çözümdür. –
@HovercraftFullOfEels Cevabınız için teşekkür ederiz. Profil paneli oluşturulduğunda blob veritabanından seçebilmem gerekiyor. Hangi alternatifi veya seçenekleri önerebilirsiniz? – p3ace
Daha iyi yardım için, daha önce bir [MCVE] veya [Kısa, Kendini İçeren, Doğru Örnek] (http://www.sscce.org/) gönderin. –