所以,我希望我的标签中的标签项水平居中.我还想更改选项卡背后的背景.我找到了这两件事的答案:
我遇到的问题是它们都是单独工作的,但是当它们结合起来时,它们就无法工作.tabItems中心很好,但背景颜色不是我指定的颜色.
例如代码:
<TabControl>
<TabControl.Resources>
<Style TargetType="{x:Type TabPanel}">
<Setter Property="HorizontalAlignment" Value="Center" />
<Setter Property="Background" Value="Red" />
</Style>
</TabControl.Resources>
<TabItem Header="Test 1" />
<TabItem Header="Test 2" />
<TabItem Header="Test 3" />
<TabItem Header="Test 4" />
</TabControl>
Run Code Online (Sandbox Code Playgroud)
救命?
我不是很习惯制作批处理文件,所以我可能做错了什么,但我真的遇到了关闭/关闭的问题.(也就是说,如果你发现我错过了任何其他错误,请随意指出)
这是我的代码的简化版本:
@echo off
setlocal
set args=
set dir="."
:getargs
IF "%2"=="" (
set dir="%1"
goto callbatch
)
set args=%args% %1
shift
goto getargs
:callbatch
for %%f in (%dir%\*.txt) do (
echo processing %%f
"%BATCHHOME%\batch.bat %args% %%f
echo
)
Run Code Online (Sandbox Code Playgroud)
所以基本上,我在BATCHHOME中有一个批处理文件,它对单个txt文件做了一些事情,我想生成一个批处理文件来处理给定目录中的所有txt文件.循环中唯一的回声是为了更好地说明问题.
现在,这是我遇到问题的地方.输出如下:
processing foo\text1.txt
some output from batch.bat
ECHO is on.
C:\somedir>(
echo processing foo\text2.txt
"C:\the\path\of\batch.bat" the arguments here foo\text2.txt
)
ECHO is on.
C:\somedir>(
echo processing foo\text3.txt
"C:\the\path\of\batch.bat" the arguments here foo\text3.txt
)
ECHO is on.
(etc)
Run Code Online (Sandbox Code Playgroud)
好的...我不知道为什么我正在调用的批处理文件会响应,但我没有成功,所以我每次都会把它关掉!我把最后一部分改为:
:callbatch
for …Run Code Online (Sandbox Code Playgroud) 所以,我有以下对象(为了举例简化):
public class SomeListener implements EventListener{
public final Object lock = new Object();
public int receivedVal;
@Override
public onDataAvailable(int val){
synchronized(lock){
System.out.println("listener received val: " + val);
receivedVal = val;
lock.notifyAll();
}
}
}
Run Code Online (Sandbox Code Playgroud)
我在主线程的某处(再次,简化)中有这段代码:
SomeListener listener = new SomeListener();
EventGenerator generatorThread = new EventGenerator();
generatorThread.addListener(listener);
synchronize(listener.lock){
generatorThread.start();
listener.lock.wait();
System.out.println("value is: " + listener.receivedVal);
}
//some other stuff here....
Run Code Online (Sandbox Code Playgroud)
现在,EventGenerator对象使用val = 1调用"onDataAvailable",然后在另一个线程上调用val = 2.基本上,我期望看到的是:
listener received val: 1
value is: 1
listener received val: 2
Run Code Online (Sandbox Code Playgroud)
但是,我通常得到:
listener received val: 1 …Run Code Online (Sandbox Code Playgroud)