간단한 Swing App을 사용하여 여러 JButton으로 특정 유형의 프로젝트를 관리 할 수 있으며 하단에 프로젝트 트리를 인쇄합니다. 프로젝트가 열릴 때 스크린 샷을 참조하십시오. 앱에서 : App screenshoot without project opened초기화 후 JScrollPane + JTree 디스플레이 관련 문제
은 HMI가 간단하고 다음과 같습니다 :
public class Desktop extends JFrame implements ActionListener {
public Desktop() {
JButton newProject, generate, quit, bAddToClassPath, openProject, saveProject;
JPanel mainPanel;
JScrollPane jscrollpane;
super("MainWindow");
setLookAndFeel();
setSize(330, 440);
ParamMainPanel();
setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new Desktop();
}
});
}
public static void ParamMainPanel() {
mainPanel = new JPanel(new FlowLayout());
// BUTTONS PARAM
newProject = new JButton("Nouveau projet");
generate = new JButton("Générer...");
quit = new JButton("Quitter");
openProject = new JButton ("Ouvrir projet");
saveProject = new JButton ("Sauvegarder");
bAddToClassPath = UIUtil.iconButton();
bAddToClassPath.setActionCommand("setCP");
bAddToClassPath.addActionListener(this);
mainPanel.add(bAddToClassPath);
newProject.addActionListener(this);
newProject.setActionCommand("newP");
generate.addActionListener(this);
generate.setActionCommand("gen");
quit.addActionListener(this);
quit.setActionCommand("qui");
openProject.addActionListener(this);
openProject.setActionCommand("openP");
saveProject.addActionListener(this);
saveProject.setActionCommand("save");
mainPanel.add(newProject);
mainPanel.add(generate);
mainPanel.add(openProject);
mainPanel.add(saveProject);
mainPanel.add(quit);
// PROJECT TREE
jscrollpane = new JScrollPane(new JTree());
jscrollpane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
jscrollpane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);
jscrollpane.setMinimumSize(new Dimension(50, 50));
jscrollpane.setLocation(4,61);
jscrollpane.setSize(306,322);
mainPanel.add(jscrollpane);
}
}
는 것은이 프로젝트가 열려 있지 않은 경우입니다
App screenshoot with project opened
나는 이런 식으로 뭔가를 얻을 수
그래서 내가 프로젝트를 열지 않고 (흰색 블록) 프로젝트 트리가없는 상태에서 프로젝트를 열지 않고 Jscrollpane으로 JTree를 표시하는 대신 앱을 시작할 때 App 실행을 원합니다. 나는 그것을하는 방법을 생각할 수 없다, 어떤 생각? 여기
1)'jscrollpane.setHorizontalScrollBarPolicy (30);'작업에 정의 된 상수가있을 때 '마법 번호'를 사용하지 마십시오. 상수는 컴파일 타임 검사의 이점을 얻으며 종종 사람이 읽을 수 있습니다. 2) 더 나은 도움을 받으려면 [MCVE] 또는 [Short, Self Contained, Correct Example] (http://www.sscce.org/)를 게시하십시오. –
어드바이스 주셔서 감사합니다. '마법의 숫자'에 대한 편집을했는데, 그것은 꽤 큰 거대한 '프로젝트 특정 유형'을 설명 할 필요가 없다고 생각한 디스플레이 문제 였기 때문입니다. –
MCVE/SSCCE는 어디에 있습니까? –