package com.netsdk.demo.customize.surfaceEventDemo.frame;
|
|
import com.netsdk.demo.customize.surfaceEventDemo.frame.basic.GroupListPanel;
|
import com.netsdk.demo.customize.surfaceEventDemo.frame.basic.LoginPanel;
|
|
import javax.swing.*;
|
import java.awt.*;
|
|
/**
|
* PTZ 主界面
|
*
|
* @author 47040
|
* @since Created in 2021/3/25 17:32
|
*/
|
public class SurfaceMainFrame extends JFrame {
|
|
// 登录组件
|
private final LoginPanel loginPanel;
|
// 播放组件
|
private final RealPlayPanel realPlayPanel;
|
// 控制组件
|
private final ControlPanel controlPanel;
|
// 事件图片组件
|
private final EventPicPanel eventPicPanel;
|
// 事件列表组件
|
private final GroupListPanel groupListPanel;
|
// 事件详情组
|
private final EventGroupPanel eventGroupPanel;
|
|
public SurfaceMainFrame(String ipAddress, Integer port, String userName, String password) {
|
|
try {
|
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
|
setTitle("水面监测事件 Demo");
|
setMinimumSize(new Dimension(1366, 768));
|
setLayout(new BorderLayout());
|
setLocationRelativeTo(null);
|
setVisible(true);
|
|
JPanel placeHolderLeft = new JPanel();
|
placeHolderLeft.setLayout(new BorderLayout());
|
|
loginPanel = new LoginPanel(ipAddress, port, userName, password);
|
placeHolderLeft.add(loginPanel, BorderLayout.NORTH);
|
|
realPlayPanel = new RealPlayPanel();
|
placeHolderLeft.add(realPlayPanel, BorderLayout.CENTER);
|
|
JPanel placeHolderInner = new JPanel();
|
placeHolderInner.setLayout(new BorderLayout());
|
|
controlPanel = new ControlPanel();
|
controlPanel.setEnabled(false);
|
eventPicPanel = new EventPicPanel();
|
placeHolderInner.add(controlPanel, BorderLayout.NORTH);
|
placeHolderInner.add(eventPicPanel, BorderLayout.CENTER);
|
placeHolderLeft.add(placeHolderInner, BorderLayout.EAST);
|
|
groupListPanel = new GroupListPanel(
|
new String[]{"EventID", "通道", "事件", "UTC", "详情"},
|
new int[]{10, 10, 50, 80, 480}
|
);
|
placeHolderLeft.add(groupListPanel, BorderLayout.SOUTH);
|
eventGroupPanel = new EventGroupPanel("事件组");
|
|
add(placeHolderLeft, BorderLayout.CENTER);
|
add(eventGroupPanel, BorderLayout.EAST);
|
}
|
|
public LoginPanel getLoginPanel() {
|
return loginPanel;
|
}
|
|
public RealPlayPanel getRealPlayPanel() {
|
return realPlayPanel;
|
}
|
|
public ControlPanel getControlPanel() {
|
return controlPanel;
|
}
|
|
public EventPicPanel getEventPicPanel() {
|
return eventPicPanel;
|
}
|
|
public GroupListPanel getGroupListPanel() {
|
return groupListPanel;
|
}
|
|
public EventGroupPanel getEventGroupPanel() {
|
return eventGroupPanel;
|
}
|
|
public void clearInfoAndDisableControl() {
|
this.getGroupListPanel().clearTableContent();
|
this.getEventPicPanel().clearPic();
|
this.getEventGroupPanel().clearAll();
|
this.getControlPanel().setEnabled(false);
|
}
|
}
|