java 如何用dcm4che中的工具从pacs下载图像,findscu和getscu的区别,以及getscu实现的话,pacs系统需要设置本地的ae信息吗
2条回答 默认 最新
IT论之程序员 2023-06-05 20:25关注这是因为你在黑色面板和黄色面板中都设置了内容填充面板的 JLabel 组件,但是只有一个面板可以显示在窗体上。当你切换面板时,前一个面板上的所有组件都会被移除,包括图片 JLabel。
解决方法是:- 不要在每个面板中都添加 JLabel 组件,而是在窗体的内容面板上直接添加一个 JLabel,让它填充整个窗体。
- 根据当前显示的面板,来设置这个 JLabel 的图片。
修改后的代码如下:
java import java.awt.*; import javax.swing.*; import java.awt.event.*; public class Trans { public static void main(String[] args) { new Window("window"); } } class Window extends JFrame{ //... //窗体内容面板 private JPanel contentPanel; //显示图片的 JLabel private JLabel imageLabel; public Window(String s) { super(s); super.getContentPane().setLayout(null); //图片 JLabel 填充整个窗体 imageLabel = new JLabel(); imageLabel.setBounds(0, 0, 1280, 720); super.getContentPane().add(imageLabel, Integer.MIN_VALUE); //设置窗口风格 super.setBounds(123,30,1290,725); super.setVisible(true); super.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); //显示黑色面板 showBlackPanel(); } //显示黑色面板 public void showBlackPanel() { contentPanel = (JPanel) super.getContentPane(); contentPanel.setOpaque(false); contentPanel.setBackground(Color.black); //... //设置图片 ImageIcon icon1 = new ImageIcon("res/1.jpg"); imageLabel.setIcon(icon1); } //显示黄色面板 public void showYellowPanel() { //... //设置图片 ImageIcon icon2 = new ImageIcon("res/凯尔希.jpg"); imageLabel.setIcon(icon2); } }这样就可以在不同的面板中切换图片了。
解决 无用评论 打赏 举报