求各路大神指教swing的问题

tron1992 2013-03-31 03:18:01
import java.awt.*;
import javax.swing.*;
import java.io.*;
import java.awt.geom.*;
import java.math.*;
import java.util.*;
class DrawLine extends JPanel
{

public void paint(Graphics g)
{
super.paint(g);
Graphics2D g2d = (Graphics2D)g;
double startx,starty,endx,endy;
startx=0;
starty=100*Math.sin((0*Math.PI)/180)+100;
Line2D line=null;
for(double i = 1; i < 360*4 ; i=i+0.01)
{
endx=i;
endy=100*Math.sin((i*Math.PI)/180)+100;
line = new Line2D.Double(startx,starty,endx,endy);
startx=endx;
starty=endy;
g2d.draw(line);
}
}
}
public class override
{
public static void main(String args[])
{
JFrame frame = new JFrame("深大");
Container con = frame.getContentPane();
frame.setLayout(new BorderLayout());
JPanel pan1 = new JPanel();
JPanel pan2 = new JPanel();
JPasswordField jp = new JPasswordField();
DrawLine d = new DrawLine();
JTabbedPane tab = new JTabbedPane(JTabbedPane.TOP);
JLabel label = new JLabel("深大版权所有");
JButton button = new JButton("点我可能就执行了");
button.setFont(new Font("楷体",Font.BOLD,30));
JSplitPane vsplit = new JSplitPane(JSplitPane.VERTICAL_SPLIT,button,new JLabel("hehe"));//拆分的时候调用构造指定拆分方式和两个组件
JSplitPane vsplit1 = new JSplitPane(JSplitPane.VERTICAL_SPLIT,vsplit,jp);//拆分的时候调用构造指定拆分方式和两个组件
vsplit.setDividerSize(10);//调整分割线粗细
vsplit1.setDividerSize(10);
vsplit.setOneTouchExpandable(true);//是否开启快速展开折叠
vsplit1.setOneTouchExpandable(true);


pan1.add(label);
pan2.add(vsplit1);//把设置好的分割后的整体加入面板中
JScrollPane scrollpan1 = new JScrollPane(pan1,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);//在构造方法里面调用组件,水平滚动和垂直滚动
JScrollPane scrollpan2 = new JScrollPane(pan2,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);//在构造方法里面调用组件,水平滚动和垂直滚动
JScrollPane scrolld = new JScrollPane(d,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
tab.addTab("关于",scrollpan1);//选项卡名称和显示的容器
tab.addTab("按钮",scrollpan2);
tab.addTab("绘制波形",scrolld);
con.add(tab,BorderLayout.CENTER);//加入的时候调用布局管理器
con.add(new JLabel("-_-!"),BorderLayout.SOUTH);
frame.pack();
frame.setSize(200,300);
// frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}

我昨天已经画出来sin函数的图形了,画在一个jpanel容器里面,现在的问题是,画出来之后他显示的不完全,于是乎我想在里面加个滚动框,结果好像滚动框没什么用,还是显示不全,有人说是布局管理器的问题,于是我在加入滚动框之前设置了布局管理器为空,好像还是不行,求指教!!!!
...全文
82 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
tron1992 2013-03-31
  • 打赏
  • 举报
回复
引用 2 楼 Gaowen_HAN 的回复:
你的代码不规范。。一般swing编程不能乱来的
嗯,我知道,我是菜鸟,这个只是随便练练手的,但是波形那边显示就是有问题这是为什么
fearlessMore 2013-03-31
  • 打赏
  • 举报
回复
你的代码不规范。。一般swing编程不能乱来的
tron1992 2013-03-31
  • 打赏
  • 举报
回复
额,自己顶一下,求助,急

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧