我的需求是根据有向图结构生成一个图形化显示,包含顶点和有向边。目前的方法是用一个空布局管理器的panel,将顶点用label画出,并用 label.setBounds()指定顶点位置。后对label加入了拖拽功能。但此时若将label拖到frame大小的外面,则显示不出也无法拖回了。
于是想使用scrollpane加入滚动条功能,即假设当前panel的大小是100×100,frame除去边框外大小和panel相同,拖动一个 label到x=200处,则panel大小变为200×100,frame不变,并能用滚动条看到整个panel。但既然要手动设定 preferredsize才能使用滚动条,下面的工作在我看来就相当繁琐了。
也就是说要记录最上,最下,最左,最右的label,若拖拽的label超过了这个界限,就要计算超出量并setPreferredSize();若将当前的边界label向中心拖拽,也要setPreferredSize()。这还没有考虑多个label同在边界线上的情况。不知道有没有人遇到这个问题,想讨论一下简单点的方法。
于是想使用scrollpane加入滚动条功能,即假设当前panel的大小是100×100,frame除去边框外大小和panel相同,拖动一个 label到x=200处,则panel大小变为200×100,frame不变,并能用滚动条看到整个panel。但既然要手动设定 preferredsize才能使用滚动条,下面的工作在我看来就相当繁琐了。
也就是说要记录最上,最下,最左,最右的label,若拖拽的label超过了这个界限,就要计算超出量并setPreferredSize();若将当前的边界label向中心拖拽,也要setPreferredSize()。这还没有考虑多个label同在边界线上的情况。不知道有没有人遇到这个问题,想讨论一下简单点的方法。
楼主【cs_ww】截止到2008-07-31 11:08:11的历史汇总数据(不包括此帖):
发帖的总数量:0 发帖的总分数:0 每贴平均分数:0
回帖的总数量:0 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:0 结贴的总分数:0
无满意结贴数:0 无满意结贴分:0
未结的帖子数:0 未结的总分数:0
结贴的百分比:---------------------结分的百分比:---------------------
无满意结贴率:---------------------无满意结分率:---------------------
如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=cs_ww