对于WinForms,它是:
var value = DataGridView.Rows[0].Cells[0].Value
Run Code Online (Sandbox Code Playgroud)
有没有办法在WPF中获取它?
我有一个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)
为什么会这样?我不能把一个带空格的命令作为同一个条目吗?
我有一个Swing JButton,我也在为我的项目使用以下代码:
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
Run Code Online (Sandbox Code Playgroud)
现在,当尝试使用btnNewButton.setBackground(Color.RED);它更改一个按钮的背景时,它不会变为红色,只有边框变为红色.
如何在仍然UIManager.getSystemLookAndFeelClassName()用于其余组件/项目时将此背景变为红色?
我有以下代码:
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) 我有以下代码:
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)