gpt4 book ai didi

Java FlowLayout 确实把我的图片画得很小

转载 作者:太空宇宙 更新时间:2023-11-04 08:24:53 26 4
gpt4 key购买 nike

我的 FlowLayout 确实将图片画得很小,所以我几乎看不到它们。

我的错误是什么?

我以后的计划是,它看起来像这样:

enter image description here

所以现在我正在研究内部流布局,它显示一行颜色分离或直方图。

    public Window(String pfad, Image bild) {
this.pfad = pfad;
this.bild = bild;

int[] actualScalation1 = new int[2];
Scaler scalerImg1 = new Scaler(bild);
actualScalation1 = scalerImg1.getActualScalation();

// int RGB-int Array
int [][] rgbColorsForPicture;

// Gib mir das Bild als BufferedImage
BufferedImage pictureForColorSeperation = null;
try {
pictureForColorSeperation = BufferImage.drawthePicture(pfad);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// Gib mir das Bild als RGB-int Array
rgbColorsForPicture = ImageToolK.readRGBvalues(pictureForColorSeperation);
// Erstelle den roten Farbauszug
ColorSeperation farbauszugRot = new ColorSeperation(rgbColorsForPicture, 0, 0, 0, actualScalation1[0], actualScalation1[1], 0.5);
farbauszugRot.createColorSeperation();

ColorSeperation farbauszugGruen = new ColorSeperation(rgbColorsForPicture, 0, 0, 1, actualScalation1[0], actualScalation1[1], 0.5);
farbauszugGruen.createColorSeperation();

ColorSeperation farbauszugBlau = new ColorSeperation(rgbColorsForPicture, 0, 0, 2, actualScalation1[0], actualScalation1[1], 0.5);
farbauszugBlau.createColorSeperation();

Histogram histogramRot = new Histogram(rgbColorsForPicture, 0, 0, 0, bild.getHeight(null), bild.getWidth(null), 1, 1);
histogramRot.createHistogram(bild.getHeight(null), bild.getWidth(null));

PicturePanel panelbild1 = new PicturePanel(bild, actualScalation1[0], actualScalation1[1]);
PicturePanel panelbild2 = new PicturePanel(bild, actualScalation1[0], actualScalation1[1]);
PicturePanel panelbild3 = new PicturePanel(bild, actualScalation1[0], actualScalation1[1]);


/**
*
* LAYOUTEN
*/

Panel panel1 = new Panel();
Panel glDiagramsAndSeperations = new Panel();

panel1.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 0));
// ((FlowLayout) panel1.getLayout()).setAlignment(FlowLayout.LEFT);
// GridBagLayout gbl = new GridBagLayout();
GridLayout mainWindow = new GridLayout(1, 0, 0, 0);
glDiagramsAndSeperations.setLayout(new GridLayout(0, 1, 0, 0));
//
// GridBagConstraints gbc = new GridBagConstraints();
setLayout(mainWindow); // GridBagLayout setzen

// glDiagramsAndSeperations.add(panel1);
//
panel1.add(farbauszugRot);
panel1.add(farbauszugGruen);
panel1.add(farbauszugBlau);


//
// panel1.add(panelbild1);
// panel1.add(panelbild2);

add(panel1);


this.setBackground(new Color(232, 232, 232));

pack();
setVisible(true);
}

最佳答案

图像设置为IconJLabel那么 Image 的大小应该可以调整到最大 Icon's getWidhtgetHeight

由于您的主题是关于 FlowLayout,因此您在此处发布的代码片段显示了 GridLayout 的用法,如果您接受 Grid 中的所有 Object 在屏幕上将具有相同的 Bounds,那么 LayoutManager 可能是正确的

关于Java FlowLayout 确实把我的图片画得很小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8766530/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com