小编Omi*_*mid的帖子

在WPF中获取DataGrid中的单元格值

对于WinForms,它是:

var value = DataGridView.Rows[0].Cells[0].Value
Run Code Online (Sandbox Code Playgroud)

有没有办法在WPF中获取它?

c# wpf datagrid

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

ProcessBuilder在多个参数下表现不正常

我有一个ProcessBuilder:

String src = c:/hello/
String dst = c:/hello/2

ProcessBuilder builder = null;
builder = new ProcessBuilder("c:/file/file.exe", "-i", src, "-f", "-l 500", dst);
builder.redirectErrorStream(true);
process = builder.start();
Run Code Online (Sandbox Code Playgroud)

问题是,只要我添加,"-l 500"我得到输出:

"l 500"无效命令

即使我已经输入"-l 500"而不是"l 500".如果我输入"--l 500"我得到:

"-l 500"无效命令

即使-l 500在命令提示符下运行它是一个有效的命令.

如果我删除"-l 500"它再次工作.

我使用Processbuilder错了吗?

编辑:

好吧,如果我将"-l"和"500"作为单独的条目,它似乎有效:

new ProcessBuilder("c:/file/file.exe", "-i", src, "-f", "-l", "500", dst);
Run Code Online (Sandbox Code Playgroud)

为什么会这样?我不能把一个带空格的命令作为同一个条目吗?

java command processbuilder

5
推荐指数
2
解决办法
5538
查看次数

改变JButton的背景

我有一个Swing JButton,我也在为我的项目使用以下代码:

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
Run Code Online (Sandbox Code Playgroud)

现在,当尝试使用btnNewButton.setBackground(Color.RED);它更改一个按钮的背景时,它不会变为红色,只有边框变为红色.

如何在仍然UIManager.getSystemLookAndFeelClassName()用于其余组件/项目时将此背景变为红色?

java swing jbutton

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

尝试Regex匹配Processbuilder输出时出现异常

我有以下代码:

private void GetInfo(String src) throws IOException{

        Scanner scan = new Scanner(System.in);          
        String filename = new File(src).getName();

        ProcessBuilder builder = new ProcessBuilder("/Users/Daim/Desktop/process", src);
        builder.redirectErrorStream(true);
        Process process = builder.start();
        final InputStream is = process.getInputStream();

            new Thread(new Runnable() {
                String line;
                @Override
                public void run() {
                    try {
                        BufferedReader br = new BufferedReader(new InputStreamReader(is));
                        while ((line = br.readLine()) != null) {
                            System.out.println(line);
                        }

                    } catch (IOException e) {
                        e.printStackTrace();
                    }

                    Pattern p = Pattern.compile("least");
                    Matcher m = p.matcher(line);

                    //System.out.println("match");

                }

            }).start();
    } …
Run Code Online (Sandbox Code Playgroud)

java processbuilder

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

BufferedReader不从ProcessBuilder返回所有行

我有以下代码:

ProcessBuilder builder = new ProcessBuilder("C:\\file\\ffmpeg.exe", "-i", src);
builder.redirectErrorStream(true);
Process process = builder.start();
InputStream is = process.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
try {
   while ((br.readLine()) != null) {
      System.out.println(br.readLine() + "\n");
   }
} catch (IOException e) {
   e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

现在这是输出:

建于2013年3月22日08:56:38,gcc 4.7.2(GCC)

libavutil 52. 22.101/52. 22.101

libavformat 55. 0.100/55. 0.100

libavfilter 3. 48.100/3. 48.100

libswresample 0. 17.102/0.17.102

输入#0,avi,来自'C:\ Users\Olle\Desktop\file.avi':

编码器:Lavf52.104.0

流#0:0:视频:mpeg4(简单配置文件)(DX50/0x30355844),yuv420p,720x408 [SAR 1:1 DAR 30:17],29.97 fps,29.97 tbr,29.97 tbn,30001 tbc

必须至少指定一个输出文件

当它应该输出更多(在常规命令行MUCH更多输出).

我不明白发生了什么.奇怪的是,当我在Mac上编译上面的代码时,它运行正常.它只在Windows中有这个问题.

即使:

String …
Run Code Online (Sandbox Code Playgroud)

java

0
推荐指数
1
解决办法
821
查看次数

标签 统计

java ×4

processbuilder ×2

c# ×1

command ×1

datagrid ×1

jbutton ×1

swing ×1

wpf ×1