小编RYN*_*RYN的帖子

禁用在JEditorPane中滚动到文本结尾

您好
我使用带有HTMLEditorKit的JEditorPane来显示能够包装文本的HTML文本.
问题是,当我使用.setText方法设置内容时,它会自动滚动到该文本的末尾.
我怎么能禁用它?

谢谢.

java swing scroll jeditorpane htmleditorkit

4
推荐指数
2
解决办法
2163
查看次数

在大量的jTextField中选择所有焦点

我的应用程序中有很多jTextFields(大约34个jTextFields),我希望所有这些文本在获得焦点时选择所有文本,并且在焦点丢失时不选择任何文本.
有没有办法用一个监听器做这个或者我应该为这34个jTextField中的每一个写一个"FocusGained"和一个"FocusLost"?

谢谢

java swing focus selectall jtextfield

4
推荐指数
1
解决办法
8875
查看次数

在java中获取HashMap中的变量类型

我有一个HashMap<String,Object>并存储了 3 种不同类型(整数、字符串、长整数)的一些数据。
如何找出具有特定键的值的类型?

java types hashmap

4
推荐指数
2
解决办法
6050
查看次数

在FTPClient中对storeFileStream的第二次调用返回null

我正在使用apache的commons-net FTPClient来上传文件.
我正在使用storeFileStream方法.
这适用于第一次调用但在第二次调用时返回null.getReplyStrings()返回"200 PORT命令成功"!
我的代码是(在每个文件的循环中称为方法):

    FileInputStream fis = null;
    File LF=new File(localFilePath);
    InputStream is = new FileInputStream(LF);

    for(String DP:(remoteBasepath+"/"+remoteFilePath).split("/")){
        if(!client.changeWorkingDirectory(DP)){
            client.makeDirectory(DP);
            client.changeWorkingDirectory(DP);
        }
    }

    for(String line:client.getReplyStrings()){
        System.out.println(line);
    }
    OutputStream os = client.storeFileStream(LF.getName());
    byte[] buffer = new byte[1024];
    int len;
    System.out.println("start");
    long RBUN=0L;
    for(String line:client.getReplyStrings()){
        System.out.println(line);
    }
    while ((len = is.read(buffer)) != -1){
        os.write(buffer, 0, len);
        os.flush();
        RBUN+=len;
        CFPRGS.setValue(Math.round((RBUN*100/LF.length())));
    }
    for(String line:client.getReplyStrings()){
        System.out.println(line);
    }
    is.close();
    os.close();
Run Code Online (Sandbox Code Playgroud)

问题是什么?

java ftp ftp-client apache-commons-net

4
推荐指数
1
解决办法
4195
查看次数

Java:在运行时将类添加到Jar存档

我想在运行时将一些编译类(.class文件)添加到当前Jar文件中的目录(包)中
我该怎么做?

谢谢

java runtime jar

3
推荐指数
1
解决办法
3243
查看次数

JAVA:将图像放入jTable Cell

我需要在一个jTable单元格中显示图像.
我写了这个:

class ImageRenderer extends DefaultTableCellRenderer {
    JLabel lbl = new JLabel();

    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected,
        boolean hasFocus, int row, int column) {
        lbl.setText((String) value);
        lbl.setIcon(new ImageIcon("/home/ariyan/Desktop/71290452.jpg"));
        return lbl;
    }
}
Run Code Online (Sandbox Code Playgroud)

然后用它作为:

    jTable1.getColumn(0).setCellRenderer(new ImageRenderer());
Run Code Online (Sandbox Code Playgroud)

但这不起作用
我怎么能这样做?

谢谢

java swing image jtable cell

3
推荐指数
1
解决办法
2万
查看次数

如何在java中取消ExecutorService

我编写了一个运行某些线程的应用程序,ExecutorService并等待它们完成,如下所示:

ExecutorService exService;
exService = Executors.newCachedThreadPool();
exService.execute(T1);
exService.execute(T2);
exService.shutdown();
boolean finshed = exService.awaitTermination(5, TimeUnit.MINUTES);
Run Code Online (Sandbox Code Playgroud)

有时我需要取消这些线程的执行(整个ExecutorService).
我尝试exService.shutdownNow()但它抛出java.lang.InterruptedException并且不取消线程.
如何取消这些线程的执行?


编辑:T1类代码作为nanda的请求添加

public class TC implements Runnable{
    private ExtractedDataBuffer Buffer;
    private Scraper scraper;
    private String AppPath;
    private boolean Succeed=false;
    private Map<String,Object> Result=null;
    private JLabel StatElement;

    public TC(ExtractedDataBuffer Buffer,String AppPath,String XMLfile,JLabel Stat) throws FileNotFoundException {
        this.Buffer = Buffer;
        this.AppPath=AppPath;
        this.StatElement=Stat;

        ScraperConfiguration config;
        config = new ScraperConfiguration(AppPath + Main.XMLFilesPath +XMLfile);
        scraper = new Scraper(config, AppPath);
    }

    private void …
Run Code Online (Sandbox Code Playgroud)

java multithreading executorservice cancellation

3
推荐指数
2
解决办法
7808
查看次数

从右到左排列JTable列

当我添加列时JTable,默认情况下,它们是从左到右排列的.
例如,如果我按此顺序添加(从左到右):

col1,col2,col3 
Run Code Online (Sandbox Code Playgroud)

我会得到:

+------+------+------+
| col1 | Col2 | Col3 |
+------+------+------+
Run Code Online (Sandbox Code Playgroud)

但我想要这个:

+------+------+------+
| col3 | Col2 | Col1 |
+------+------+------+
Run Code Online (Sandbox Code Playgroud)

如何JTable从右到左排列?

java swing jtable

3
推荐指数
1
解决办法
1834
查看次数

在fa_IR语言环境中显示数字

我正在尝试在fa_IR区域设置中显示数字。
我正在使用此代码:

NumberFormat.getNumberInstance(new Locale("fa","IR")).format(myNum);
Run Code Online (Sandbox Code Playgroud)

但这会打印英文(en_US)数字。
如何在Java中的特定语言环境中显示数字?


实施例:
例如,如果myNumBE 12输出应该是??


编辑:
似乎java.text.NumberFormat不支持fa_IR语言环境(?)。
使用com.?ibm.?icu.?text.?NumberFormat替代,解决了这个问题!

java locale numbers

3
推荐指数
2
解决办法
1810
查看次数

运行perl脚本,如没有CGI的PHP

是否可以在不使用CGI的情况下在Web服务器中运行Perl脚本?
我的意思是,像php脚本(运行任何没有#!/path/to/interpreter行的.pl文件).
如果是,怎么样?

谢谢

apache perl cgi module

3
推荐指数
1
解决办法
720
查看次数