我用JTextArea创建了一个JFrame.我想在每次追加后自动向下滚动textarea.我该如何管理它?
我试过了log.setCaretPosition(log.getDocument().getLength());,但没有改变.
package scrollit;
import java.awt.*;
import javax.swing.*;
import static javax.swing.JFrame.EXIT_ON_CLOSE;
public class ScrollIt extends JFrame {
public static void main(String[] args) {
ScrollIt sc = new ScrollIt();
}
public ScrollIt() {
super();
JTextArea log = new JTextArea();
log.setPreferredSize(new Dimension(50,50));
setDefaultCloseOperation(EXIT_ON_CLOSE);
add(log);
pack();
setVisible(true);
log.append("a\n");
log.append("b\n");
log.append("c\n");
log.append("d\n");
log.append("e\n");
log.append("f\n");
}
}
Run Code Online (Sandbox Code Playgroud) 有一个新的CSS属性,will-change使用您可以定义将经常更改的属性,以便浏览器可以对其进行优化.例如:
.element {
will-change: transform, opacity;
}
Run Code Online (Sandbox Code Playgroud)
但相反呢?是否有类似的建议或工作草案will-not-change?使用它可以提示浏览器,该属性永远不会改变(常量),所以它可以对它做一些优化?
我正在使用一个可生成php文件的重构工具。这些生成的文件也可以包含变量,函数和类。
我想编写单元测试,以测试那些文件是否按预期工作,但是我不知道该怎么做。
如果我要求使用的文件不正确if (! @require('my_new_file.php') ) {,我仍然会遇到解析错误,无法捕获。
我require在函数内调用,但所需文件中的定义在函数外仍然可用。我该如何避免呢?是否可能需要在范围内的文件,因此它不会污染全局名称空间?
即使我eval(file_get_contents('my_new_file.php'))在函数内部调用,在其中定义的函数my_new_file.php也是全局可用的。
我创建了一个 observable,它将在最后一次更改后 3 秒触发,并调用publishChange服务的 。它有效,但我想创建一个doImmediateChange函数,该函数publishChange立即调用并停止去抖动的 observable。这怎么可能?
我的组件:
class MyComponent {
private updateSubject = new Subject<string>();
ngOnInit() {
this.updateSubject.pipe(
debounceTime(3000),
distinctUntilChanged()
).subscribe(val => {
this.srv.publishChange(val);
});
}
doChange(val: string) {
this.updateSubject.next(val);
}
doImmediateChange(val: string) {
// Stop the current updateSubject if debounce is in progress and call publish immediately
// ??
this.srv.publishChange(val);
}
}
Run Code Online (Sandbox Code Playgroud) 我想创建一个展开和折叠面板列表,如下图所示:

我没有找到任何摆动组件,所以我开始创建这样的东西.我试图把按钮放在另一个下面,这填补了可用的宽度,但是并没有真正起作用.我只能看到最后添加的一个.
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
panel.add(new JButton("Delphi Projects"), BorderLayout.NORTH);
panel.add(new JPanel(), BorderLayout.NORTH); // hidden panel
panel.add(new JButton("Delphi Projects | Delphi Files"), BorderLayout.NORTH);
panel.add(new JPanel(), BorderLayout.NORTH); // hidden panel
panel.add(new JButton("Other Files"), BorderLayout.NORTH);
panel.add(new JPanel(), BorderLayout.NORTH); // hidden panel
panel.add(new JButton("C++ Builder Projects | C++ Builder Files"), BorderLayout.NORTH);
panel.add(new JPanel(), BorderLayout.NORTH); // hidden panel
JScrollPane scroll = new JScrollPane(panel);
Run Code Online (Sandbox Code Playgroud) 在php-s类型提示中,我不能使用标量类型,如整数或字符串.所以这是无效的:
function myFunc(int $num) {
//...
}
Run Code Online (Sandbox Code Playgroud)
是否可以使用包装类,如JAVA?整数,字符串,布尔值等...
我想像这样使用它:
function myFunc(Integer $num) {
//...
}
myFunc(5); // ok
myFunc("foo"); // error
Run Code Online (Sandbox Code Playgroud)
我知道,默认情况下,php中没有包装类.但怎么可能写一个呢?
如果我宣布一个原子变量,这是只有在一个线程中使用,是编译器能够优化了这一点,并更换std::atomic<T>有T在某些情况下?
我已经阅读了一些关于激励的编译器优化的文章,但它们主要是关于锁和存储的重新排序和分组,而不是关于消除它们.
我们std:shared_pointer举个例子.它有一个原子计数器,但如果只有一个线程可以访问它,它可以用一个简单的计数器代替,它仍然会表现得好像是一个原子.
有一个名为resize的新CSS属性,因此div也可以调整大小.但是如何附加事件监听器?因为.onresize只能在窗口对象上工作
JSFiddle:http://jsfiddle.net/3y0gfj8j/
编辑:
我不想使用JQuery.这不是一个重复的问题.我只发现了这个问题的JQuery解决方案,这就是我问这个问题的原因.
我想在一个名为"data"的textarea中发送一个~10MB的json数据.如果数据是1-2KB,那么它可以完美地工作.但是对于一个大的json,由于$_POST['data']某种原因它是空的.
我无法上传json,因为它是客户端生成的,它不是文件.
我试过这段代码,但仍然无法正常工作:
form.setAttribute('enctype', 'multipart/form-data');
Run Code Online (Sandbox Code Playgroud)
编辑
使用此设置它仍然无法正常工作:
memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 64M
Run Code Online (Sandbox Code Playgroud)
EDIT2
如果我从php 5.4切换到5.6,那么我得到一个500错误页面,屏幕上没有写入详细信息.
我正在研究一个在多个客户运行的项目.有许多延迟加载的模块,其中大部分都被所有客户使用.但是有一些模块只在少数几个地方需要,所以我想把它们从其他地方的构建中排除.
可能吗?