请问如果控制JTextArea,使其弹出的时候窗口不超过屏幕之外。
8条回答
- clxy大叔 2013-04-18 18:10关注
简单的例子
[code="java"]
import java.awt.BorderLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;public class TextareaTest {
public static void main(String[] args) { final JFrame frame = new JFrame("Textarea"); final JDialog dialog = new TextareaDialog(frame, true); JButton button = new JButton("Click Me!"); button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { dialog.setLocationRelativeTo(frame); dialog.pack(); dialog.setSize(300, 200); dialog.setVisible(true); } }); frame.getContentPane().add(button, BorderLayout.CENTER); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLocationRelativeTo(null); frame.pack(); frame.setVisible(true); }
}
class TextareaDialog extends JDialog {
JTextArea textarea = new JTextArea(); public TextareaDialog(Frame owner, boolean modal) { super(owner, modal); // 初始化 setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); setTitle("文本框测试"); // 添加文本框。 textarea.setLineWrap(true); JScrollPane scroll = new JScrollPane(textarea); getContentPane().add(scroll, BorderLayout.CENTER); // ====-------------------------------测试数据。 String text = "长长的测试数据"; for (int i = 0; i <= 1000; i++) { text += "好长"; } textarea.setText(text); }
}
[/code]本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 1
悬赏问题
- ¥15 安卓adb backup备份应用数据失败
- ¥15 eclipse运行项目时遇到的问题
- ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
- ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
- ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
- ¥50 成都蓉城足球俱乐部小程序抢票
- ¥15 yolov7训练自己的数据集
- ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
- ¥15 电力市场出清matlab yalmip kkt 双层优化问题
- ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)