EAS单据显示图片字段原创
8人赞赏了该文章
493次浏览
编辑于2020年12月03日 14:33:00
利用BOS开发单据,偶尔需要在单据上显示图片,现在贴出我的设计思路,其实主要是借鉴EAS中的标准模块。
代码如下:
创建对象:
private PhotoPanel pPanel ;
实例化:
pPanel = new PhotoPanel();
布局
public void onShow() throws Exception { super.onShow(); this.photoPanel.setLayout(null); this.photoPanel.add(pPanel); pPanel.setBounds(0, 0, 182, 100); }
根据单据状态设置图片面板状态并显示弹出工具栏
this.pPanel.setOprtStat(getOprtState());if(editData != null && editData.getId() != null){HotelInfo hotelInfo = HotelFactory.getRemoteInstance().getHotelInfo(new ObjectUuidPK(editData.getId()));if(UIRuleUtil.isNotNull(hotelInfo.getImageData())){ByteArrayInputStream bis = new ByteArrayInputStream(hotelInfo.getImageData());BufferedImage bimage = ImageIO.read(bis);pPanel.setSelectImage(bimage);bis.close();}else{pPanel.setSelectImage(null);pPanel.repaint();}}
上传并保存
public void storeFields(){ if(UIRuleUtil.isNotNull(pPanel.getSelectImageBytes())){ editData.setImageData(pPanel.getSelectImageBytes()); }super.storeFields();}
注意:需要手动在数据表中新增BLOB字段,在实体上添加自有属性(ByteArray)
赞 8
8人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读