java聊天滚动条代码 java swing滚动条

java 聊天界面 空布局,加滚动条panel.add(scroll);scroll.setBounds(,,,);怎么填?scroll.setBounds( ,, , );
参数分别为 x,y,width,height
width和height可能顺序不对
分别的意思就是
x: 相对于容器最左边的距离,
y:相对于容器最上面的距离,
width:水平长度
height:垂直高度
然后我估计你就知道怎么写了
不过值得一提的是一般来说只有布局方式为null的时候setBounds才有用 。
Java如何产生有滚动条的TextArea?(代码)补充回答:你向TextArea内追加内容可以使用append方法,滚动条自动下滚;如果你使用的是 setText方法 , 那么需要手工把光标定位到内容的最后,同样可以是滚动条下滚 。代码如下:
import java.awt.Frame;
import java.awt.TextArea;
public class TestFrame {
public static void main(String[] args){
Frame jf=new Frame();
TextArea jta=new TextArea();
jf.add(jta);
jf.setSize(400, 300);
jf.setVisible(true);
jta.setText("test\n");
for(int i=0;i100;i){
jta.setText(jta.getText() "hello" i "\n");
jta.setCaretPosition(jta.getText().length());
}
//jta.append("hello" i "\n"); //这样方式只需要一行代码
}
}
1)如果是JTextArea,需要把JTextArea包含到JScrollPane滚动面板中
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class TestFrame {
public static void main(String[] args){
JFrame jf=new JFrame();
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTextArea jta=new JTextArea();
JScrollPane jp=new JScrollPane(jta);
jf.getContentPane().add(jp);
jf.setSize(400, 300);
jf.setVisible(true);
}
}
2)如果是TextArea,使用缺省方式就可以
import java.awt.Frame;
import java.awt.TextArea;
public class TestFrame {
public static void main(String[] args){
Frame jf=new Frame();
TextArea jta=new TextArea();
jf.add(jta);
jf.setSize(400, 300);
jf.setVisible(true);
}
}
为java聊天室代码加详细注释,并说明设计思路 。好的加100分 。import java.io.*;
import java.net.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;//引入包 。
public class ChatClient {
public static void main(String[] args) {
ChatClient cc = new ChatClient();
cc.receive();
}
JTextField jtf; // 文本条
JTextArea jta; //文本域 。
Socket s; //客户端
PrintWriter out; //输出流
【java聊天滚动条代码 java swing滚动条】 BufferedReader in; //输入流
public ChatClient() {
JFrame frame = new JFrame("ChatClient");//窗口
frame.setSize(400, 300); //大小
jta = new JTextArea(); //文本域
jta.setEditable(false); //不可编辑
jtf = new JTextField();//文件条
jtf.addActionListener(new ActionListener() { //添加监听 。
public void actionPerformed(ActionEvent arg0) {
send(); //调用send()方法
}
});
frame.getContentPane().add(new JScrollPane(jta)); //添加滚动条
frame.getContentPane().add(jtf, "South"); //添加文本条
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口 。
frame.setVisible(true); //可显示的 。
try {
s = new Socket("127.0.0.1", 9000); //连接服务端 socket("主机名" , 端口号);
in = new BufferedReader(new InputStreamReader(s.getInputStream())); //建立输入流
out = new PrintWriter(s.getOutputStream());//输出流
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void receive() { //接受服务端发来别的客户端的信息 。
while (true) {
try {
String text = in.readLine(); //读一行
this.jta.append(text"\n"); //jta 添加上读入的 。
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return;
}
}
}
public void send() { //发送消息
String text = this.jtf.getText(); //得到你输入的消息
this.jtf.setText(""); //在文本域中显示你输入的消息 。
out.println(text); //打印出 。
out.flush(); //清空
}
}
Server端
import java.net.*;
import java.io.*;
import java.util.*;//引入包
public class ChatServer {
public static void main(String[] args) throws Exception {
ServerSocket ss = new ServerSocket(9000); //建立服务端 , 端口号为9000
List list = new ArrayList(); //创建个List集合 。
while (true) {
Socket s = ss.accept(); //等待客户端的请求 。
list.add(s); //把每一个client都add到集合中去 。
Thread t = new ServerThread(s, list); //线程 。
t.start(); //启动 。
}
}
}
class ServerThread extends Thread {
Socket s;
List list;
BufferedReader in;
PrintWriter out;
public ServerThread(Socket s, List list) { //构造 。传入socket和list 。
this.s = s;
this.list = list;
try {
in = new BufferedReader(new InputStreamReader(s.getInputStream())); //输入流
out = new PrintWriter(s.getOutputStream()); //输出流
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void run() { //必须实现其run()方法 。
while (true) {
try {
String str = in.readLine(); //得到client端的message 。
if (str == null) //如果没有消息就返回 。
return;
Iterator it = list.iterator(); //遍历list 。
while (it.hasNext()) { //如果list有下一个
Socket socket = (Socket) (it.next()); //因为list中都是存的socket
PrintWriter o = new PrintWriter(socket.getOutputStream()); //输出流
o.println(str); //输出
o.flush(); //清空
}
} catch (IOException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
return;
}
}
}
}
java GUI 滚动条程序如下:
import java.awt.GridLayout;
import java.awt.Toolkit;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
public class JscrollDemo extends JFrame
{
private JScrollPane btnPanel;
private JPanel panel;
private JButton button;
int btnNum = 10; //按钮数,可以是任意数
int closNum = 4;//每行按钮数,可自定义
public JscrollDemo()
{
panel = new JPanel();
setTitle("滚动条测试");
setBounds((Toolkit.getDefaultToolkit().getScreenSize().width - 500)/2,
(Toolkit.getDefaultToolkit().getScreenSize().height - 500)/2, 500, 400);
panel.setLayout(new GridLayout(0,closNum));
for(int i=0;ibtnNum;i)
{
button = new JButton("按钮"(i 1));
button.setSize(100, 80);
panel.add(button);
}
if((btnNum*1.0/closNum)3)
{
btnPanel = new JScrollPane(panel,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
}
else
{
btnPanel = new JScrollPane(panel,
JScrollPane.VERTICAL_SCROLLBAR_NEVER,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
}
add(btnPanel);
setVisible(true);
setResizable(false);
}
public static void main(String[] args)
{
new JscrollDemo();
}
}
有问题欢迎提问,满意请采纳,谢谢!
java 添加一个竖滚动条滚动条使用类似于下面的代码创建:
redSlider=new Scrollbar(Scrollbar.VERTICAL, 0, 1, 0, 255);
add(redSlider);
当用户改变滚动条的值时,滚动条接收一个 AdjustmentEvent 实例 。滚动条处理此事件,将它传递给所有已注册的侦听器 。
任何希望滚动条值发生变化时被通知的对象都应该实现包 java.awt.event 中定义的 AdjustmentListener接口 。调用 addAdjustmentListener 和 removeAdjustmentListener 方法能动态地添加或删除侦听器 。
AdjustmentEvent 类定义了五种调整事件,如下所示:
当用户拖动滚动条的滑动块时,发送 AdjustmentEvent.TRACK 。
当用户单击水平滚动条的左箭头或垂直滚动条的上箭头,或从键盘做出等效动作时,发送AdjustmentEvent.UNIT_INCREMENT 。
当用户单击水平滚动条的右箭头或垂直滚动条的下箭头,或从键盘做出等效动作时,发送AdjustmentEvent.UNIT_DECREMENT 。
当用户单击水平滚动条滑动块左边的轨道,或垂直滚动条滑动块上边的轨道时,发送AdjustmentEvent.BLOCK_INCREMENT 。按照惯例,如果用户使用定义了 Page Up 键的键盘,则Page Up 键是等效的 。
当用户单击水平滚动条滑动块右边的轨道,或垂直滚动条滑动块下边的轨道时 , 发送AdjustmentEvent.BLOCK_DECREMENT 。按照惯例,如果用户使用定义了 Page Down 键的键盘 , 则Page Down 键是等效的 。
如何在java程序中加上滚动条 , 为什么我的程序滚动条没显示?请使用JScroolPane 。比如要为一个多行文本域加上滚动条java聊天滚动条代码 , 要使用如下代码java聊天滚动条代码:
jf.add(new JScrollPane(new TextArea(50,30))));
其中jf代表窗口 。
关于java聊天滚动条代码和java swing滚动条的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读