我正在尝试向JTextArea添加滚动条.有人请告诉我下面的代码我做错了什么?
JFrame frame = new JFrame ("Test");
JTextArea textArea = new JTextArea ("Test");
JScrollPane scrollV = new JScrollPane (textArea);
JScrollPane scrollH = new JScrollPane (textArea);
scrollV.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
scrollH.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
frame.setVisible (true);
Run Code Online (Sandbox Code Playgroud)
先感谢您.
编辑:我修改了下面的Adel Boutros建议的代码.
//FRAME
JFrame frame = new JFrame ("Test");
frame.setSize(500,500);
frame.setResizable(false);
//
//TEXT AREA
JTextArea textArea = new JTextArea("TEST");
textArea.setSize(400,400);
textArea.setLineWrap(true);
textArea.setEditable(false);
textArea.setVisible(true);
JScrollPane scroll = new JScrollPane (textArea);
scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
scroll.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
frame.add(scroll);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Run Code Online (Sandbox Code Playgroud) 在MSDN上的一篇文章中,它声明double数据类型的范围是"-1.79769313486232e308 .. 1.79769313486232e308".而long数据类型仅具有"-9,223,372,036,854,775,808 ... 9,223,372,036,854,775,807"的范围.如果它们都是64位大小,double那么如何保存这么多的数据long呢?
http://msdn.microsoft.com/en-us/library/cs7y5x0x(v=vs.90).aspx
在涉及递归函数时,我绝望地迷失了.我需要创建一个递归函数来遍历二叉树并在特定值之间插入一个新节点.我需要重新复制我的遍历函数并在我使用它的其他所有函数中修改它吗?有人请评估遍历功能吗?
我认为我的遍历代码没问题.
Node traverse (Node currentNode){
if (!currentNode.left.equals(null)){
traverse (currentNode.left);
return currentNode.left;
}
if (!currentNode.right.equals(null)){
traverse (currentNode.right);
return currentNode.right;
}
return currentNode;
}
Run Code Online (Sandbox Code Playgroud) 我需要一种计算组合的方法,而不会耗尽内存.这是我到目前为止所拥有的.
public static long combination(long n, long k) // nCk
{
return (divideFactorials(factorial(n), ((factorial(k) * factorial((n - k))))));
}
public static long factorial(long n)
{
long result;
if (n <= 1) return 1;
result = factorial(n - 1) * n;
return result;
}
public static long divideFactorials(long numerator, long denominator)
{
return factorial(Math.Abs((numerator - denominator)));
}
Run Code Online (Sandbox Code Playgroud)
我已将其标记为C#,但理想情况下,解决方案应该与语言无关.
我有2个相等长度的数组.以下函数尝试使用这些数组计算斜率.它返回每个点之间的斜率的平均值.对于以下数据集,我似乎获得了与Excel和Google Docs不同的值.
double[] x_values = { 1932, 1936, 1948, 1952, 1956, 1960, 1964, 1968,
1972, 1976, 1980 };
double[] y_values = { 197, 203, 198, 204, 212, 216, 218, 224, 223, 225,
236 };
public static double getSlope(double[] x_values, double[] y_values)
throws Exception {
if (x_values.length != y_values.length)
throw new Exception();
double slope = 0;
for (int i = 0; i < (x_values.length - 1); i++) {
double y_2 = y_values[i + 1];
double y_1 = y_values[i];
double delta_y = …Run Code Online (Sandbox Code Playgroud) 我想使用 Java 中的 Robot 类进行拖放。由于某种原因,下面的代码不起作用。这种方法有替代方法吗?
public static void main (String args []){
Robot robot = new Robot ();
robot.mouseMove(350, 226);
robot.keyPress(InputEvent.BUTTON1_MASK);
robot.mouseMove(250, 350);
robot.keyRelease(InputEvent.BUTTON1_MASK);
Run Code Online (Sandbox Code Playgroud)
}
我试图弄清楚为什么设置系统剪贴板的内容对我不起作用.我以编程方式设置剪贴板内容.当我使用代码的输出部分时,它的工作原理.但是,当我尝试在任何文本编辑器中复制/粘贴时,它是空白的.
气垫编辑,来自github的代码:
import java.awt.HeadlessException;
import java.awt.Toolkit;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.io.IOException;
public class Test {
public static void main(String[] args) throws HeadlessException,
UnsupportedFlavorException, IOException {
Toolkit.getDefaultToolkit().getSystemClipboard()
.setContents(new StringSelection("hi there"), null);
System.out.println(((String) Toolkit.getDefaultToolkit()
.getSystemClipboard().getData(DataFlavor.stringFlavor)));
}
}
Run Code Online (Sandbox Code Playgroud)