⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit2.cpp

📁 光学仪器的控制系统 用于教学和科研的仪器
💻 CPP
📖 第 1 页 / 共 2 页
字号:
         break;
  case 2:Radio22->Checked=true;
         break;
  case 3:Radio23->Checked=true;
         break;
  case 4:Radio24->Checked=true;
         break;
 }
// 设置 GroupBox3 扫描方式
 switch(Select3)
 {
  case 1:SetRadio31();
         Radio31->Checked=true;
         break;
  case 2:SetRadio32();
         Radio32->Checked=true;
         break;
  case 3:SetRadio33();
         Radio33->Checked=true;
         //wnst=200;wnet=800;
         break;
 }
 Edit31->Text=IntToStr((int)csd5[1]);
 Edit32->Text=IntToStr((int)csd5[2]);
 Edit33->Text=IntToStr((int)csd5[3]);

// 设置 GroupBox4 波长范围
 if(Select3!=3)//不是时间扫描
 {
  wnst=ewns;
  wnet=ewne;
 }
 else
 {
  wnst=twns;
  wnet=twne;
 }
 Edit41->Text=IntToStr((int)wnst);
 Edit42->Text=IntToStr((int)wnet);


// 设置 GroupBox9 光谱带宽
 switch(Select4)
 {
  case 1:Radio41->Checked=true;
         break;
  case 2:Radio42->Checked=true;
         break;
  case 3:Radio43->Checked=true;
         break;
  case 4:Radio44->Checked=true;
         break;
  case 5:Radio45->Checked=true;
         break;
 }

// 设置 GroupBox5 负高压
 EditVol->Text=IntToStr((int)csd10);

// 设置 GroupBox7 增益
 //EditAmp->Text=IntToStr((int)csd11);
 EditAmp->Text="自动";

// 设置 GroupBox6 换灯波长
 EditLampCh->Text=IntToStr((int)csd8);

}
//---------------------------------------------------------------------------

void __fastcall TChanShu::ButtonOKClick(TObject *Sender)
{// 确认参数设置

 if(Edit11->Text.IsEmpty()) return;
 if(Edit12->Text.IsEmpty()) return;
 if(Edit13->Text.IsEmpty()) return;
 if(Edit14->Text.IsEmpty()) return;
 if(Edit15->Text.IsEmpty()) return;
 if(Edit16->Text.IsEmpty()) return;
 if(Edit31->Text.IsEmpty()) return;
 if(Edit32->Text.IsEmpty()) return;
 if(Edit33->Text.IsEmpty()) return;
 if(Edit41->Text.IsEmpty()) return;
 if(Edit42->Text.IsEmpty()) return;
 if(EditVol->Text.IsEmpty()) return;
 if(EditAmp->Text.IsEmpty()) return;
 if(EditLamp->Text.IsEmpty()) return;
 if(EditLampCh->Text.IsEmpty()) return;

 bOK=true;
// 获取GroupBox1数据 测试模式
      if(Radio12->Checked==true) Select1=1;
 else if(Radio13->Checked==true) Select1=2;
 else if(Radio11->Checked==true) Select1=3;
 if(StrToFloat(Edit13->Text)>=StrToFloat(Edit14->Text)) return;
 if(StrToFloat(Edit15->Text)>=StrToFloat(Edit16->Text)) return;
 if(StrToFloat(Edit11->Text)>=StrToFloat(Edit12->Text)) return;
 tnl2[1]=StrToFloat(Edit13->Text);
 tnh2[1]=StrToFloat(Edit14->Text);
 tnl2[2]=StrToFloat(Edit15->Text);
 tnh2[2]=StrToFloat(Edit16->Text);
 tnl2[3]=StrToFloat(Edit11->Text);
 tnh2[3]=StrToFloat(Edit12->Text);
 if(tnl2[1]<-400||tnh2[1]>400||tnl2[1]>=tnh2[1]) return;
 if(tnl2[2]<-4||tnh2[2]>4||tnl2[2]>=tnh2[2]) return;
 if(tnl2[3]<0||tnh2[3]>4095||tnl2[3]>=tnh2[3]) return;

// ..
  if(RadioButton1->Checked==true)       Select0=1;
  else if(RadioButton2->Checked==true)  Select0=2;
  else if(RadioButton3->Checked==true)  Select0=3;
  else if(RadioButton4->Checked==true)  Select0=4;

// 获取GroupBox2数据 扫描速率
  if(Radio21->Checked==true)            Select2=1;
  else if(Radio22->Checked==true)       Select2=2;
  else if(Radio23->Checked==true)       Select2=3;
  else if(Radio24->Checked==true)       Select2=4;

// 获取GroupBox3数据 扫描方式
      if(Radio31->Checked==true) Select3=1;
 else if(Radio32->Checked==true) Select3=2;
 else if(Radio33->Checked==true) Select3=3;
 csd5[1]=(short int)StrToInt(Edit31->Text);
 csd5[2]=(short int)StrToInt(Edit32->Text);
 csd5[3]=(short int)StrToInt(Edit33->Text);

// 获取GroupBox9数据 光谱带宽
      if(Radio41->Checked==true) Select4=1;
 else if(Radio42->Checked==true) Select4=2;
 else if(Radio43->Checked==true) Select4=3;
 else if(Radio44->Checked==true) Select4=4;
 else if(Radio45->Checked==true) Select4=5;

// 获取GroupBox4数据 波长范围

 if(StrToFloat(Edit41->Text)>=StrToFloat(Edit42->Text))
   return;
 if(StrToFloat(Edit41->Text)<Form1->wns0&&Select3!=3)
   return;
 if(StrToFloat(Edit42->Text)>Form1->wne0&&Select3!=3)
   return;
 if(Select3==3) // 时间扫描
 {
   twns=0;
   twne=60*StrToInt(Edit33->Text);
   wnst=twns;
   wnet=twne;
 }
 else
 {
   ewns=StrToFloat(Edit41->Text);
   ewne=StrToFloat(Edit42->Text);
   wnst=ewns;
   wnet=ewne;
 }
// 获取GroupBox5数据 负高压
 csd10=(short int)StrToInt(EditVol->Text);

// 获取GroupBox7数据 增益
 //csd11=(short int)StrToInt(EditAmp->Text);

// 获取GroupBox8数据 工作光源
 csd2=UpDown63->Position;

// 获取GroupBox6数据 换灯波长

 csd8=(short int)StrToInt(EditLampCh->Text);
 if(csd8<320||csd8>400) return;

 if(CheckBox1->Checked)
  {
     Form1->bGrid=true;
     Form1->Xgridindex=ComboBox1->ItemIndex;
     Form1->Ygridindex=ComboBox2->ItemIndex;
  }
 else
  {
     Form1->bGrid=false;
  }
 if(CheckBox2->Checked)
  {
     Form1->bScale=true;
  }
 else
  {
     Form1->bScale=false;
  }
 SetYiqiAttr();
 Close();
}
//---------------------------------------------------------------------------

void __fastcall TChanShu::ButtonCALClick(TObject *Sender)
{// 忽视参数设置
 bOK=false;
 Close();
}
//---------------------------------------------------------------------------

void __fastcall TChanShu::ButtonDEFClick(TObject *Sender)
{// 缺省参数设置
 ComboBox1->ItemIndex=2;
 CheckBox1->Checked=false;
 ComboBox1->Enabled=false;
 Label13->Enabled=false;

 Select0=1;;
 Select1=3;
 Select2=1;
 Select3=1;
 Select4=5;
 tnl2[1]=0; tnh2[1]=100;
 tnl2[2]=0; tnh2[2]=2;
 tnl2[3]=0; tnh2[3]=4095;
 csd5[1]=1; csd5[2]=1; csd5[3]=10;
 wnst=Form1->wns0; wnet=Form1->wne0;
 ewns=Form1->wns0; ewne=Form1->wne0;
 csd8=360;                              // 换灯波长 =360
 csd10=2;                               // 负高压 =1
 csd11=1;                               // 增益 =1
 FormShow(Sender);
}
//---------------------------------------------------------------------------


void __fastcall TChanShu::Edit11KeyPress(TObject *Sender, char &Key)
{
 //
}
//---------------------------------------------------------------------------


bool __fastcall TChanShu::ifNumber(AnsiString *String)
{
 int i,len;
 len=String->Length();
 if(len<=0) return true;
 for(i=0;i<len;i++)
 {
  if((String->c_str())[i]>'0'&&(String->c_str())[i]<'9')
   continue;
  else
  {
   Application->MessageBox("你输入了非法字符!", "输入错误",
        MB_OK|MB_ICONWARNING);
   return false;
  }
 }
 return true;
}
//---------------------------------------------------------------------------

void TChanShu::SetYiqiAttr()
{//设置机器状态
    //TODO: Add your source code here
}
//---------------------------------------------------------------------------

void __fastcall TChanShu::Edit33Change(TObject *Sender)
{
 EditChange(Sender);
 twns=0; twne=60*StrToInt(Edit33->Text);
 Edit41->Text=FloatToStr(twns);
 Edit42->Text=FloatToStr(twne);
}
//---------------------------------------------------------------------------



void __fastcall TChanShu::UpDown63Click(TObject *Sender, TUDBtnType Button)
{// 选择工作光源
      if(UpDown63->Position==1)
        EditLamp->Text="氘灯";
 else if(UpDown63->Position==2)
        EditLamp->Text="钨灯";
 else if(UpDown63->Position==3)
        EditLamp->Text="自动";
}
//---------------------------------------------------------------------------


void __fastcall TChanShu::EditChange(TObject *Sender)
{
 TEdit *tEdit=(TEdit *)Sender;
 tEdit->Text=IsNumber(tEdit->Text);
}
//---------------------------------------------------------------------------






void __fastcall TChanShu::CheckBox1Click(TObject *Sender)
{
  if(!CheckBox1->Checked)
         {
           //CheckBox1->Checked=false;
           //Form1->bGrid=false;

           ComboBox1->Enabled=false;
           ComboBox2->Enabled=false;
           CheckBox2->Checked=true;
           }
  else
         {
           //CheckBox1->Checked=true;
           //Form1->bGrid=true;

           ComboBox1->Enabled=true;
           ComboBox2->Enabled=true;
           CheckBox2->Checked=false;
         }

}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -