我有一些代码可以动态调整聊天面板的大小,但它不会根据鼠标移动。发生的情况是鼠标移动的速度比面板调整大小的速度更快。例如,我希望它是怎样的,在任何应用程序中,当您单击两个窗口之间的边界并拖动它时,鼠标会与您正在单击的部分保持一致,目前这种情况不会发生。这是我的代码。如果您需要更多,请告诉我
public void mouseDragged(MouseEvent e) {
if(getCursor().getType() == Cursor.getPredefinedCursor(Cursor.N_RESIZE_CURSOR).getType()) {
owner.adjust((int)MouseInfo.getPointerInfo().getLocation().getY());
System.out.println("vertpanel: "+(int)MouseInfo.getPointerInfo().getLocation().getY());
}
}
public void adjust(int adjustment) {
int height = this.getHeight();
System.out.println((((double)(adjustment))/height)+":"+(((double)(height-adjustment))/height));
output.setHeightPercent((((double)(adjustment))/height));
output.componentResized(new ComponentEvent(this, 1));
input.setHeightPercent((((double)(height-adjustment))/height));
input.componentResized(new ComponentEvent(this, 2));
}
有一个主面板,一个聊天面板,其中有两个较小的面板,一个聊天输入和一个聊天输出