大侠,给个示例。
解决方案 »
- Delphi 换版本后 报错 Invalid Compiler Directive (进来讨论 帮忙 谢谢各位了!)
- 这样的程序能否可行呢?
- DELPHI中有没有像C++链表一样的数据结构,可以方便实现删除
- 请教,如何通过循环语句实现:select 第 i 列的数据和相应的列名。
- teechart Y轴设置问题
- 我是新手,遇到一个和教材上不同的问题,高手请指教!!!(50分)
- DBGrid中哪个事件是控制单击行的?哪个事件是单击列的?
- 如何获得win2000任务管理器中应用程序的句柄
- 帮忙找两本书的电子版或真实书籍,能在网上可以购买或下载的都可以
- 一个很菜的问题,答者有分...向高手求教
- 高分求实现软件简单的注册
- 200万条记录,5个左右的用户,用什么数据库好?
var
h:hwnd;
begin
h:=0;
h:=findwindow(pchar('progman'),nil);
if h<>0 then
begin
showwindow(h,sw_hide);
end;
end;
//显示隐藏的桌面
EnterCriticalSection()
LeaveCriticalSection()
DeleteCriticalSection()
InitializeCriticalSection()等等,
举一个例子下如:unit Main;interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;type
TMainForm = class(TForm)
Button1: TButton;
ListBox1: TListBox;
procedure Button1Click(Sender: TObject);
private
procedure ThreadsDone(Sender: TObject);
end; TFooThread = class(TThread)
protected
procedure Execute; override;
end;var
MainForm: TMainForm;implementation{$R *.DFM}const
MaxSize = 128;var
NextNumber: Integer = 0;
DoneFlags: Integer = 0;
GlobalArray: array[1..MaxSize] of Integer;
CS: TRTLCriticalSection;function GetNextNumber: Integer;
begin
Result := NextNumber; // return global var
inc(NextNumber); // inc global var
end;procedure TFooThread.Execute;
var
i: Integer;
begin
OnTerminate := MainForm.ThreadsDone;
EnterCriticalSection(CS); // CS begins here
for i := 1 to MaxSize do
begin
GlobalArray[i] := GetNextNumber; // set array element
Sleep(5); // let thread intertwine
end;
LeaveCriticalSection(CS); // CS ends here
end;procedure TMainForm.ThreadsDone(Sender: TObject);
var
i: Integer;
begin
inc(DoneFlags);
if DoneFlags = 2 then
begin // make sure both threads finished
for i := 1 to MaxSize do
{ fill listbox with array contents }
Listbox1.Items.Add(IntToStr(GlobalArray[i]));
DeleteCriticalSection(CS);
end;
end;procedure TMainForm.Button1Click(Sender: TObject);
begin
InitializeCriticalSection(CS);
TFooThread.Create(False); // create threads
TFooThread.Create(False);
end;end.
API Delphi
-----------------------
LPCSTR PChar
DWORD Cardinal
int Integer
PVIOD Pointer
http://community.csdn.net/Expert/topic/3294/3294517.xml?temp=.2879755