哪位大侠用过JTaskPane这个新组件,有问题请赐教!~ 哪位大侠用过JTaskPane这个新组件,有问题请赐教!~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TaskPane有个TaskGroup可实现类似树的功能,它有像TREE中的TreePath类的功能吗?就是说 如何得到TaskGroup中各节点的路径! 先要确定的是TaskPane跟TaskPaneGroup是Container和Panel的关系,用TaskPaneGroup来实现的树形不是真正的Tree,他不存在Path路径的问题,他的Parent就是Container:TaskPane,你所指的节点的路径如果不是TaskPaneGroup的Title,确实要记录“路径”的话,只能用数据绑定的方式记录,如extends TaskPaneGroup,加上void setData(Object object) 和 Object getData()方法绑定Path. 代码如下:我想解决的问题是点击左侧TaskPane的“用户1”,右侧会出现对应的dataPanel这个Panel,希望大侠帮我在次代码基础上实现这个功能!import java.awt.BorderLayout;import java.awt.Component;import java.awt.Dimension;import java.awt.Font;import java.awt.Toolkit;import java.awt.event.ActionEvent;import javax.swing.AbstractAction;import javax.swing.Action;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JSplitPane;import javax.swing.JTextField;import com.l2fprod.common.swing.JTaskPane;import com.l2fprod.common.swing.JTaskPaneGroup;public class TaskPane extends JFrame { private JPanel mainPanel=new JPanel(); private JSplitPane splitPane=new JSplitPane(); private JTaskPane taskPane = new JTaskPane(); private JTaskPaneGroup userGroup = new JTaskPaneGroup(); private JTaskPaneGroup generalGroup = new JTaskPaneGroup(); private JPanel dataPanel=new JPanel(); private JPanel box3Panel=new JPanel(); private JPanel rightPanel=new JPanel(); private JTextField datatext=new JTextField("用户1"); private JButton newbutton=new JButton("用户2"); public TaskPane() throws Exception { jbInit(); openShow(); } private void jbInit() { add(mainPanel,BorderLayout.CENTER); mainPanel.setLayout(new BorderLayout()); mainPanel.add(splitPane,BorderLayout.CENTER); userGroup.setFont(new Font("", Font.BOLD, 14)); userGroup.setTitle("用户"); generalGroup.setFont(new Font("", Font.BOLD, 14)); generalGroup.setTitle("常规"); splitPane.setLeftComponent(taskPane); splitPane.setRightComponent(rightPanel); taskPane.add(userGroup); taskPane.add(generalGroup); userGroup.add(makeAction("用户1")); userGroup.add(makeAction("用户2")); userGroup.add(makeAction("用户3")); dataPanel.add(datatext); box3Panel.add(newbutton); } public JPanel currentPanel(Component component) { if (component == null) { rightPanel.removeAll(); rightPanel.updateUI(); } else { rightPanel.removeAll(); rightPanel.setLayout(new BorderLayout()); rightPanel.add(component, BorderLayout.CENTER); rightPanel.updateUI(); } return rightPanel; } public void setControlPanel(String cmdStr) { if (cmdStr.equals("用户1")) { setCurrentPanel(dataPanel); } else if (cmdStr.equals("用户2")) { setCurrentPanel(box3Panel); } } Action makeAction(String title) { Action action = new AbstractAction(title) { public void actionPerformed(ActionEvent e) {} }; return action; } public void openShow() throws Exception{ Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = getPreferredSize(); frameSize.width=800; frameSize.height=600; setSize(frameSize); setLocation( ( (screenSize.width - frameSize.width) / 2), ( (screenSize.height - frameSize.height) / 2)); super.setVisible(true); setTitle("TaskPane"); } public static void main(String[] args) throws Exception { new TaskPane(); }} 关于静态方法占用内存内存的疑问 登陆后的页面转向问题?如果之前的页面是form表单提交后的结果页面怎么办? javasript如何设置这样的焦点?? 超简单问题,送分了,过来抢啊!!!!!!!!!!!! 偶像们来帮忙 搜索后没能解决的问题 关于一个行数统计器的程序怎么编写???急~~~~?SOS!!!!!!高手帮忙!!! 请问高手有关并发的问题 Thread.start()的问题 谁知道怎么做到跟远程的网页同步的问题 帮帮忙!!急急!! 怎么控制表格让它能够显示某列和不显示某列 如何将Dialog中所有组件都设成不可编辑,且能关闭该Dialog;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTextField;
import com.l2fprod.common.swing.JTaskPane;
import com.l2fprod.common.swing.JTaskPaneGroup;public class TaskPane extends JFrame {
private JPanel mainPanel=new JPanel();
private JSplitPane splitPane=new JSplitPane();
private JTaskPane taskPane = new JTaskPane();
private JTaskPaneGroup userGroup = new JTaskPaneGroup();
private JTaskPaneGroup generalGroup = new JTaskPaneGroup();
private JPanel dataPanel=new JPanel();
private JPanel box3Panel=new JPanel();
private JPanel rightPanel=new JPanel();
private JTextField datatext=new JTextField("用户1");
private JButton newbutton=new JButton("用户2"); public TaskPane() throws Exception {
jbInit();
openShow();
}
private void jbInit() {
add(mainPanel,BorderLayout.CENTER);
mainPanel.setLayout(new BorderLayout());
mainPanel.add(splitPane,BorderLayout.CENTER);
userGroup.setFont(new Font("", Font.BOLD, 14));
userGroup.setTitle("用户");
generalGroup.setFont(new Font("", Font.BOLD, 14));
generalGroup.setTitle("常规");
splitPane.setLeftComponent(taskPane);
splitPane.setRightComponent(rightPanel);
taskPane.add(userGroup);
taskPane.add(generalGroup);
userGroup.add(makeAction("用户1"));
userGroup.add(makeAction("用户2"));
userGroup.add(makeAction("用户3"));
dataPanel.add(datatext);
box3Panel.add(newbutton);
}
public JPanel currentPanel(Component component) {
if (component == null) {
rightPanel.removeAll();
rightPanel.updateUI();
}
else {
rightPanel.removeAll();
rightPanel.setLayout(new BorderLayout());
rightPanel.add(component, BorderLayout.CENTER);
rightPanel.updateUI();
}
return rightPanel;
}
public void setControlPanel(String cmdStr) {
if (cmdStr.equals("用户1")) {
setCurrentPanel(dataPanel);
}
else if (cmdStr.equals("用户2")) {
setCurrentPanel(box3Panel);
}
}
Action makeAction(String title) {
Action action = new AbstractAction(title)
{
public void actionPerformed(ActionEvent e) {}
};
return action;
}
public void openShow() throws Exception{ Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = getPreferredSize();
frameSize.width=800;
frameSize.height=600;
setSize(frameSize);
setLocation( ( (screenSize.width - frameSize.width) / 2),
( (screenSize.height - frameSize.height) / 2));
super.setVisible(true);
setTitle("TaskPane");
}
public static void main(String[] args) throws Exception {
new TaskPane();
}}