求大神解救。。。

做一只蝴蝶 2015-12-19 06:17:51
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class E16_13 extends JFrame
{
private int i = 0;
private JLabel jl;
public static void main(String[] args)
{
E16_13 frame = new E16_13();
frame.setTitle("E16_13");
frame.setSize(800,600);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public E16_13()
{
Timer timer = new Timer(1000, new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jl = new JLabel(new ImageIcon("image/slide" + i + ".jpg"));
add(jl);
i++;
i = i%25;
}
});
timer.start();
}

}
最大化的时候又能看到?求大神解答啊。纠结了好久了。。。

下面这个程序也是,在paintComponent里我放了个按钮但也是显示不出来,最大化的时候又突然出来了,还原,又多出来一个按钮。。。好奇怪啊。。。求大神带我飞。。我做你小弟

import javax.swing.*;
import java.awt.*;


public class E15_11 extends JFrame
{
public E15_11()
{
add(new NewPanel());
}
public static void main(String[] args)
{
E15_11 frame = new E15_11();
frame.setTitle("E15_11");
frame.setSize(900,900);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
class NewPanel extends JPanel
{
public NewPanel()
{
}
protected void paintComponent(Graphics g)
{
super.paintComponent(g);
int width = getWidth();
int height = getHeight();
g.drawLine(width/2,height, width/2, height/4);
int[] x1 = {width/2-3,width/2,width/2+3};
int[] y1 = {height/4+3,height/4,height/4+3};
g.drawPolyline(x1,y1,x1.length);
g.drawLine(20,height-50,width-50,height-50);
int[] x2 = {width-53,width-50,width-53};
int[] y2 = {height-53,height-50,height-47};
g.drawPolyline(x2,y2,x2.length);
int[] x3 = new int[301];
int[] y3 = new int[301];
for(int i = 0; i<301; i++)
{
x3[i] = width/2-150+i;
y3[i] = height-50-(int)(0.01*(150-i)*(150-i));
}
g.drawPolyline(x3,y3,x3.length);
add(new JButton("xuechong"));
}
}
...全文
115 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
做一只蝴蝶 2015-12-20
  • 打赏
  • 举报
回复
引用 4 楼 jacktree365 的回复:
窗口这东西已经过时了,现在都是网页版 和 手机版 swing 用得很少
我是初学者,大哥,帮个忙吧。。。我都不知道为什么会这样。。 我后来又改成这样了 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class E16_13 extends JFrame { private int i = 0; private JLabel jl = new JLabel(); public static void main(String[] args) { E16_13 frame = new E16_13(); frame.setTitle("E16_13"); frame.setSize(800,600); frame.setLocationRelativeTo(null); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } public E16_13() { add(jl); Timer timer = new Timer(1000, new ActionListener() { public void actionPerformed(ActionEvent e) { jl.setIcon(new ImageIcon("image/slide" + i + ".jpg")); i++; i = i % 25; } }); timer.start(); } } 我不知道为什么。好像在某些地方不能进行对象赋值。。。但我在书上和百度上也看了。。没看到这方面的内容。。。
朗晴 2015-12-19
  • 打赏
  • 举报
回复
窗口这东西已经过时了,现在都是网页版 和 手机版 swing 用得很少
做一只蝴蝶 2015-12-19
  • 打赏
  • 举报
回复
引用 1 楼 jifengyishan 的回复:
可能是你的窗口大小设置的不对,我学窗口这一块也是这样,可能是布局的关系。 或者你把按钮等组件放在一个面板上,把面板放在窗口中就解决了。
我第二个程序就是把组件放在面板里,然而放在paintComponent方法里也会出现这种情况,我不知道是为什么。。。刚刚我也改成pack()也设置了各种窗口大小。。一样额。。大哥,救救我吧。。
jifengyishan 2015-12-19
  • 打赏
  • 举报
回复
可能是你的窗口大小设置的不对,我学窗口这一块也是这样,可能是布局的关系。 或者你把按钮等组件放在一个面板上,把面板放在窗口中就解决了。

23,407

社区成员

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

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