Unit1.cpp
上传用户:gyjjlc
上传日期:2013-03-29
资源大小:2124k
文件大小:2k
源码类别:

多显示器编程

开发平台:

C++ Builder

  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #pragma hdrstop
  4. #include "Unit1.h"
  5. //---------------------------------------------------------------------------
  6. #pragma package(smart_init)
  7. #pragma resource "*.dfm"
  8. //定义并初始化临界区对象,在其它模块中声明为extern变量
  9. //全局变量,不属于主线程、两个线程中的某一个,为大家共同所有
  10. TCriticalSection * TQ=new TCriticalSection();
  11. TForm1 *Form1;
  12. //---------------------------------------------------------------------------
  13. __fastcall TForm1::TForm1(TComponent* Owner)
  14.     : TForm(Owner)
  15. {
  16. }
  17. //---------------------------------------------------------------------------
  18. void __fastcall TForm1::FormCreate(TObject *Sender)
  19. {
  20.     //初始化数据
  21.     char letter='A';
  22.     for(int i=0;i<26;i++,letter++)LetterTable[i]=letter;
  23. }
  24. //---------------------------------------------------------------------------
  25. void __fastcall TForm1::Button1Click(TObject *Sender)
  26. {
  27.     if(Button1->Caption=="Start")
  28.     {
  29.         //清空以前的内容
  30.         Memo1->Lines->Clear();
  31.         //使“Start”键变成“Stop”键,禁止线程重复载入
  32.         Button1->Caption="Stop";
  33.         //启动线程
  34.         ReverseThread=new TReverseThread(false);
  35.         DisplayThread=new TDisplayThread(false);
  36.     }
  37.     else
  38.     {
  39.         //终止线程
  40.         ReverseThread->Terminate();
  41.         DisplayThread->Terminate();
  42.         //恢复“Start”键,允许再次启动线程
  43.         Button1->Caption="Start";
  44.     }
  45. }
  46. //---------------------------------------------------------------------------