在BCB中数组的妙用和纪录和改变控件的状态 (转)

在BCB中数组的妙用和纪录和改变控件的状态 (转)[@more@]

如果能巧妙地运用数组会给我们带来很多方便;以下是我的一些用法,还觉得自己每掌握它的精髓;希望大家多多指点;(现丑了)


void ) __declspec(dllexport) myList::ReadList(AnsiString TS)
{//读出ini文件的数据
  System::AnsiString LabPath=ExtractFilePath(".");
  TIniFile *LabIni=new TIniFile(LabPath+"LabIni.ini");


  Form2->AddList();
  for(int i=0;iLabelList->Count;i++)
  {
  TLabel *Lab;
  Lab=(TLabel *)Form2->LabelList->Items[i];
  Lab->Left=LabIni->ReadInteger(TS,"Left"+IntToStr(i), Lab->Left);
  Lab->Top=LabIni->ReadInteger(TS,"Top"+IntToStr(i),Lab->Top);
  }
}
file://----------------------------------------------------------------------------


void myList::WriteList(AnsiString TS)
{//写入文件
  System::AnsiString LabPath=ExtractFilePath(".");
  TIniFile *LabIni=new TIniFile(LabPath+"LabIni.ini");
  Form2->AddList();
  for(int i=0;iLabelList->Count;i++)
  {
  TLabel *Lab;
  Lab=(TLabel *)Form2->LabelList->Items[i];
  LabIni->WriteInteger(TS,"Left"+IntToStr(i), Lab->Left);
  LabIni->WriteInteger(TS,"Top"+IntToStr(i),Lab->Top);
  }
}


file://------------------------------------------------------------------------------------------


 System::AnsiString LabPath=ExtractFilePath(".");
  TIniFile *LabIni=new TIniFile(LabPath+"LabIni.ini"); 


  TList *LabelList;
  LabelList=new TList;
  LabelList->Add(Label1);
  LabelList->Add(Label2);
  LabelList->Add(Label3);
  LabelList->Add(Label4);
  LabelList->Add(Label5);
  LabelList->Add(Label6);
  LabelList->Add(Label7);
  LabelList->Add(Label8);
  LabelList->Add(Label9);
  LabelList->Add(Label10);
  LabelList->Add(Label11);
  LabelList->Add(Label12);
  LabelList->Add(Label13);
  LabelList->Add(Label14);
  LabelList->Add(Label15);


file://------------------------------------------------------------------------------------------------------


void myList::NmyChick(TMenuItem *Item,AnsiString STR,int BL)
{
  file://记录TMenuItem 的状态:
  static TMenuItem *sItem=0;
  file://Item=Form2->PopupMenu1->Items;
  file://Item=dynamic_cast(Form2->WindowMenu->Items->GetParentMenu);
  if(sItem==Item){
  Item->Checked=false;
  return;
  }
  else if(sItem) sItem->Checked=false;
  Item->Checked=true;
  sItem=Item;
  if(Item->Checked==true){
  file://¶¯Ì¬¸Ä±äForm2µÄ´óСºÍÐÎ×´
  if(BL){
  Form2->Image1->Picture->Bitmap->Height =500;
  Form2->Image1->Picture->Bitmap->Width  =732;
  Form2->Image1->Stretch = false;


  file://Form2->Image2->Picture->LoadFromFile(".LOGO.bmp");
  Form2->Image2->Width = Form2->Image2->Picture->Width;
  Form2->Image2->Height = Form2->Image2->Picture->Height;
  Form2->Image2->Top  = 12;
  Form2->Image2->Left = 15;
  Form2->Height = 500;
  Form2->Width = 732;
  Form2->Top = 0;
 Form2->Left = Screen->Width-Form2->Width;
 TCanvas *TSS =Form2->Image1->Picture->Bitmap->Canvas;
  Form1->DrawBarCode(TSS,120,300,125);
  Form2->Update();
 }
  else
  {
  Form2->Image1->Picture->Bitmap->Height =732;
  Form2->Image1->Picture->Bitmap->Width  =555;
  Form2->Image1->Stretch = false;


 Form2->Image2->Width = Form2->Image2->Picture->Width;
  Form2->Image2->Height = Form2->Image2->Picture->Height;
  Form2->Image2->Top  = 12;
  Form2->Image2->Left = 15;
  Form2->Height =732 ;
  Form2->Width = 555;
  Form2->Top = 0;
  Form2->Left = Screen->Width-Form2->Width;
  Form1->MakeLabel();
  }
  Form2->Caption = String(Form2->Image1->Picture->Bitmap->Height)+" - "+
  String(Form2->Image1->Picture->Bitmap->Width);
  file://---------------------------------------------------------
  ReadList(STR);
  Form2->Update();


  }
}


file://------------------------------------------------------------------------------------------------------


void __fastcall TForm2::FormHide(Tobject *Sender)
{
  AnsiString bj[]={"打横1","打竖1","打横2","打竖2","打横3","打竖3","还原原此设置"};
  for(int i=0;iItems->Count;i++){
  if(PopupMenu1->Items->Items[i]->Checked) LT->WriteList(bj[i]);


  }


}


file://---------------------------------------------------------------------------


void __fastcall TForm2::N4Click(TObject *Sender)
{
  LT->NmyChick(Form2->N4,"打竖2",0);
}
file://---------------------------------------------------------------------------


void __fastcall TForm2::N5Click(TObject *Sender)
{
  LT->NmyChick(Form2->N5,"打横2",1);
}
file://---------------------------------------------------------------------------


void __fastcall TForm2::N31Click(TObject *Sender)
{
  LT->NmyChick(Form2->N31,"打竖3",0);
}
file://---------------------------------------------------------------------------


void __fastcall TForm2::N32Click(TObject *Sender)
{
  LT->NmyChick(Form2->N32,"打横3",1);
}
file://---------------------------------------------------------------------------


 


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752019/viewspace-979952/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10752019/viewspace-979952/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值