我想在桌面上写一些文本(当前连接的DiskDrives).所以我设置BorderStyle到bsNone,TransparentColor到true和TransparentColorValue到clRed后,我得到了可怕的结果:

我怎样才能解决这个问题?我目前正在尝试解决这个问题已经持续了6个小时:/也许还有另一种方法可以在桌面上编写文本(而不是在所有Windows上)?
我有一些文件(3-5),我需要比较:
文件1.txt有100万字符串.
文件2.txt有1000万个字符串.
文件3.txt有500万个字符串.
所有这些文件都与文件keys.txt(万字符串)进行比较.如果当前打开的文件中的行与keys.txt中的行相同,请将此行写入output.txt(我希望您理解我的意思).
我现在有:
function Thread.checkKeys(sLine: string): boolean;
var
SR: TStreamReader;
line: string;
begin
Result := false;
SR := TStreamReader.Create(sKeyFile); // sKeyFile - Path to file keys.txt
try
while (not(SR.EndOfStream)) and (not(Result))do
begin
line := SR.ReadLine;
if LowerCase(line) = LowerCase(sLine) then
begin
saveStr(sLine);
inc(iMatch);
Result := true;
end;
end;
finally
SR.Free;
end;
end;
procedure Thread.saveStr(sToSave: string);
var
fOut: TStreamWriter;
begin
fOut := TStreamWriter.Create('output.txt', true, TEncoding.UTF8);
try
fOut.WriteLine(sToSave);
finally
fOut.Free;
end;
end;
procedure Thread.updateFiles;
begin
fmMain.flDone.Caption := IntToStr(iFile);
fmMain.flMatch.Caption …Run Code Online (Sandbox Code Playgroud) 手风琴里面有手风琴.我想绘制从手风琴的标题到最后一个儿童手风琴元素的垂直线和从垂直线到每个儿童手风琴元素的水平线.
这是我有的:
<div id="accordion3" class="collapseblock">
<div class="cardsmall">
<div class="cardsmall-header">
<span class="arrowed" id="headingGeneral" data-toggle="collapse" data-target="#collapseGeneralTab" aria-expanded="false" aria-controls="collapseGeneralTab">
Test1
</span>
</div>
<div id="collapseGeneralTab" class="collapse" aria-labelledby="headingGeneral" data-parent="#accordion3">
<div class="cardsmall-content">
Example1
</div>
</div>
</div>
<div class="cardsmall">
<div class="cardsmall-header">
<span class="arrowed" id="headingCurrency" data-toggle="collapse" data-target="#collapseCurrency" aria-expanded="false" aria-controls="collapseCurrency">
Test2
</span>
</div>
<div id="collapseCurrency" class="collapse" aria-labelledby="headingCurrency" data-parent="#accordion3">
<div class="cardsmall-content">
<div id="accordion4" class="collapseblock">
<div class="cardsmall">
<div class="cardsmall-header">
<span class="arrowed" id="headingOffers" data-toggle="collapse" data-target="#collapseOffers" aria-expanded="false" aria-controls="collapseOffers">
Test2.1
</span>
</div>
<div id="collapseOffers" class="collapse" aria-labelledby="headingOffers" data-parent="#accordion4">
<div class="cardsmall-content">
Example2.1
</div>
</div>
</div>
<div …Run Code Online (Sandbox Code Playgroud) 我跑我的一个活动,并呼叫应用startService(new Intent(this, TCPClient.class));在onStart.我也开始onCreate()设置与我的服务器建立TCP连接的服务线程.服务在单独的进程中运行.它一直运行良好,直到我重新启动我的应用程序(我不会在应用程序关闭时停止服务).当我这样做时,我将从同一IP获得1个以上的连接.所以,我有2个客户端从同一设备和相同的IP连接.问题是:如何防止创建更多服务?
表现:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.sample.servicetest" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/MainActivityTheme" >
<!-- android:theme="@style/AppTheme" > -->
<service android:name=".TCPClient"
android:process=":service">
</service>
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/MainActivityTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)
的OnStart:
@Override
protected void onStart() {
super.onStart();
Log.v(TAG, "onStart");
startService(new Intent(this, TCPClient.class));
}
Run Code Online (Sandbox Code Playgroud)
onStartCommand:
public int onStartCommand(Intent intent, int flags, int startId) {
if …Run Code Online (Sandbox Code Playgroud) 我有多维数组:
TBMArray = TArray<array of byte>;
和递归函数
function goForSolve(bData: TBMArray; const iSize: integer): TBMArray;
在这个函数
tempData: TBMArray;
我需要更改tempData而不更改bData的值.但是当我改变tempData时,bData也会改变.我试图通过函数将bData复制到tempData
procedure copyData(Source: TBMArray; var Dest: TBMArray);
var
iCurEl, iLen: integer;
begin
iLen := length(Source);
setLength(Dest, iLen);
setLength(Dest[0], 1);
for iCurEl := 1 to iLen - 1 do
setLength(Dest[iCurEl], iCurEl + 1);
for iCurEl := Low(Source) to High(Source) do
Dest[iCurEl] := Source[iCurEl];
end;
Run Code Online (Sandbox Code Playgroud)
但结果是一样的
tempData := bData;
Run Code Online (Sandbox Code Playgroud)
它似乎是函数复制指针而不是值.