?? unit1.cpp
字號:
}
Form1->Button1->Click();
}
}
//---------------------------------------------------------------------------
/****************************************************************************
Change the screen model data into the actually data
****************************************************************************/
int TForm1::time_scrntopoint(struct axis *dis,int scrn)
{
float result;
result=(scrn-dis->off)*dis->scale;
return (int)result;
}
//---------------------------------------------------------------------------
/****************************************************************************
Change the actually data into the screen data model
****************************************************************************/
short int TForm1::time_pointtoscrn(struct axis *dis,short int point)
{
short int result;
result=(short int)(point/dis->scale)+dis->off;
return result;
}
//---------------------------------------------------------------------------
float TForm1::ad_scrntovalue(struct axis *dis,int scrn)
{
float value;
value=(dis->off-scrn)*dis->scale;
return value;
}
//---------------------------------------------------------------------------
/****************************************************************************
Change memory data into screen model
****************************************************************************/
short int TForm1::ad_memtoscrn(struct axis *dis,short unsigned mem)
{
short int scrn;
float tmp;
tmp=((short int)mem-broad_ad_zero)/dis->scale;
scrn=dis->off-(short int)tmp;
return scrn;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift,
int X, int Y)
{
struct data_dis *dis;
short unsigned *buff;
short int i0,x0,y,num;
register short int i,x,j;
short unsigned xleng,xdata;
float xf;
struct axis *xdis,*ydis;
if(OpenFiled==true)
{
if(MultiImage==false)
{
dis=&trial_dis;
xdis=&(dis->time);
ydis=&(dis->trial[0]);
num=dis->stim_num;
xleng=(dis->time).leng;
xdata=trial->stim_data;
xf=dis->time.scale;
i=time_scrntopoint(xdis,X);
j=ad_scrntomem(ydis,Y);
//j=trial_ad_memtovalue(trial,j+broad_ad_zero,0);
j=trial_ad_memtovalue(trial,j,0);
i=trial_time_pointtovalue(trial,i);
Form1->suiStatusBar1->Panels->Items[1]->Text=
"當前位置: x="+IntToStr(i)+" y="+FloatToStr(j);
/*
if(CrossCursor==true)
{
Form1->Button1->Click();
Form1->Image1->Canvas->Pen->Color = clGray;
Form1->Image1->Canvas->Pen->Style=psDash;
Form1->Image1->Canvas->MoveTo(1,Y);
Form1->Image1->Canvas->LineTo(Image1->Width-1,Y);
Form1->Image1->Canvas->MoveTo(X,1);
Form1->Image1->Canvas->LineTo(X,Image1->Height-1);
}
*/
if(Editable==true||Measure!=0)
Form1->Image1->Cursor=crCross;
else
Form1->Image1->Cursor=crDefault;
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N19Click(TObject *Sender)
{
if(Application->MessageBox("測定波形起始點", "Message", MB_OKCANCEL)==IDOK)
{
MeasureKind=false;
Dataable=true;
Saveable=true;
Form1->N10->Caption="不顯示波形參數";
Measure=3;
Form1->suiStatusBar1->Panels->Items[0]->Text="測量狀態 測量波形起始點";
Editable=false;
Form1->ToolButton6->Enabled=false;
Form1->ToolButton7->Enabled=false;
Form1->ToolButton9->Enabled=false;
Form1->ToolButton10->Enabled=false;
Form1->ToolButton12->Enabled=false;
Form1->ToolButton13->Enabled=false;
Form1->ToolButton15->Enabled=false;
Form1->ToolButton16->Enabled=false;
Form1->Button1->Click();
Form1->Button3->Click();
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N20Click(TObject *Sender)
{
if(Application->MessageBox("測量OS值", "Message", MB_OKCANCEL)==IDOK)
{
Measure=2;
Form1->suiStatusBar1->Panels->Items[0]->Text="測量狀態 測量OS值";
Editable=false;
Form1->Button1->Click();
//Form1->N19->Enabled=true;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::APD201Click(TObject *Sender)
{
if(Application->MessageBox("測定APD20點", "Message", MB_OKCANCEL)==IDOK)
{
Measure=4;
Form1->suiStatusBar1->Panels->Items[0]->Text="測量狀態 測量APD20";
Editable=false;
Form1->Button1->Click();
Form1->APD501->Enabled=true;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::APD501Click(TObject *Sender)
{
if(Application->MessageBox("測定APD50點", "Message", MB_OKCANCEL)==IDOK)
{
Measure=5;
Form1->suiStatusBar1->Panels->Items[0]->Text="測量狀態 測量APD50";
Editable=false;
Form1->Button1->Click();
Form1->APD1->Enabled=true;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::APD1Click(TObject *Sender)
{
if(Application->MessageBox("測定APD90點", "Message", MB_OKCANCEL)==IDOK)
{
Measure=6;
Form1->suiStatusBar1->Panels->Items[0]->Text="測量狀態 測量APD90";
Editable=false;
Form1->ToolButton3->Enabled=true;
Form1->ToolButton4->Enabled=true;
Form1->ToolButton6->Enabled=true;
Form1->ToolButton7->Enabled=true;
Form1->ToolButton9->Enabled=true;
Form1->ToolButton10->Enabled=true;
Form1->ToolButton12->Enabled=true;
Form1->ToolButton13->Enabled=true;
Form1->ToolButton15->Enabled=true;
Form1->ToolButton16->Enabled=true;
Form1->Button1->Click();
Form1->APD1->Enabled=false;
Form1->N20->Enabled=false;
Form1->APD201->Enabled=false;
Form1->APD501->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N23Click(TObject *Sender)
{
int num;
num=trial_dis.stim_num;
if(Application->MessageBox("中斷當前測量", "Message", MB_OKCANCEL)==IDOK)
{
if(Measure>1&&Application->MessageBox("是否保留已進行的部分測量", "Message", MB_YESNO)==IDNO)
{
trial->ap_param[num].vmax=Form1->temp_apparam.vmax;
trial->ap_param[num].rp=Form1->temp_apparam.rp;
trial->ap_param[num].apa=Form1->temp_apparam.apa;
trial->ap_param[num].apd20=Form1->temp_apparam.apd20;
trial->ap_param[num].apd50=Form1->temp_apparam.apd50;
trial->ap_param[num].apd90=Form1->temp_apparam.apd90;
trial->ap_param[num].fc=Form1->temp_apparam.fc;
}
Form1->suiStatusBar1->Panels->Items[0]->Text="顯示狀態";
MeasureKind==false;
Dataable=true;
Editable=false;
Measure=0;
Form1->Button3->Click();
Form1->Button1->Click();
Form1->ToolButton3->Enabled=true;
Form1->ToolButton4->Enabled=true;
Form1->ToolButton6->Enabled=true;
Form1->ToolButton7->Enabled=true;
Form1->ToolButton9->Enabled=true;
Form1->ToolButton10->Enabled=true;
Form1->ToolButton12->Enabled=true;
Form1->ToolButton13->Enabled=true;
Form1->ToolButton15->Enabled=true;
Form1->ToolButton16->Enabled=true;
Form1->RP1->Enabled=true;
Form1->N19->Enabled=false;
Form1->N20->Enabled=false;
Form1->APD201->Enabled=false;
Form1->APD501->Enabled=false;
Form1->APD1->Enabled=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N22Click(TObject *Sender)
{
if(Application->MessageBox("進入自動測量狀態", "Message", MB_YESNO)==IDYES)
{
MeasureKind=true;
Dataable=true;
Editable=false;
Form1->N10->Caption="不顯示波形參數";
Form1->ToolButton3->Enabled=true;
Form1->ToolButton4->Enabled=true;
Form1->ToolButton6->Enabled=true;
Form1->ToolButton7->Enabled=true;
Form1->ToolButton9->Enabled=true;
Form1->ToolButton10->Enabled=true;
Form1->ToolButton12->Enabled=true;
Form1->ToolButton13->Enabled=true;
Form1->ToolButton15->Enabled=true;
Form1->ToolButton16->Enabled=true;
Form1->suiStatusBar1->Panels->Items[0]->Text="顯示狀態";
Form1->Button3->Click();
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N24Click(TObject *Sender)
{
TForm2 *Form2 = new TForm2(this);
Form2->Label2->Caption=AnsiString(trial->stim_number);
Form2->Label4->Caption=1;
Form2->Label7->Caption=AnsiString(trial->stim_during);
Form2->Label9->Caption=AnsiString(trial->sample_inter);
Form2->Label11->Caption=AnsiString(trial->sample_delay);
Form2->Label14->Caption=AnsiString(trial->out_t);
Form2->Label16->Caption=AnsiString(trial->out_t1);
Form2->Label18->Caption=AnsiString(trial->out_amp);
Form2->Label21->Caption=AnsiString(trial->out_l);
Form2->Label23->Caption=AnsiString(trial->out_n);
Form2->Label25->Caption=AnsiString(trial->out_delay);
Form2->Label28->Caption=AnsiString(trial->inch[0].unit);
Form2->Label30->Caption=AnsiString(trial->inch[0].gain);
Form2->Label32->Caption=AnsiString(trial->inch[0].num);
Form2->Label35->Caption=AnsiString(trial->inch[1].unit);
Form2->Label37->Caption=AnsiString(trial->inch[1].gain);
Form2->Label39->Caption=AnsiString(trial->inch[0].num);
Form2->Label42->Caption=AnsiString(trial->outch.unit);
Form2->Label44->Caption=AnsiString(trial->outch.gain);
Form2->Label46->Caption=AnsiString(trial->hold_potential);
//Form2->Show();
Form2->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N15Click(TObject *Sender)
{
DWORD dwHandle,InfoSize, dwLen ;
LPVOID lpData;
int i,num;
float fvmax;
short int apd,rp,apa,fc;
num=trial_dis.stim_num;
TForm3 *Form3 = new TForm3(this);
Form3->ShowHint=true;
for(i=1990;i<2050;i++)
Form3->suiComboBox1->Items->Add(AnsiString(i));
for(i=1;i<13;i++)
Form3->suiComboBox2->Items->Add(AnsiString(i));
for(i=1;i<32;i++)
Form3->suiComboBox3->Items->Add(AnsiString(i));
for(i=0;i<24;i++)
Form3->suiComboBox4->Items->Add(AnsiString(i));
for(i=0;i<60;i++)
Form3->suiComboBox5->Items->Add(AnsiString(i));
for(i=0;i<60;i++)
Form3->suiComboBox6->Items->Add(AnsiString(i));
if(DataFileName!=NULL)
{
Form3->Label2->Caption=AnsiString(DataFileName);
Form3->Label2->Hint=AnsiString(DataFileName);
if(NewDataType==true)
Form3->Label6->Caption="新文件格式";
else
Form3->Label6->Caption="舊文件格式";
//Form3->Label6->Hint=ExtractFileExt(AnsiString(DataFileName));
//試驗記錄時間
/*
Form3->Label14->Caption=AnsiString(sys_date.da_year)+"年"
+sys_date.da_mon+"月"
+sys_date.da_day+"日"
+AnsiString(record_clock.hour)+":"
+AnsiString(record_clock.minute)+":"
+AnsiString(record_clock.second);
*/
//Form3->Label14->Caption=sys_date.da_mon;
Form3->suiComboBox1->Text=AnsiString(sys_date.da_year);
Form3->suiComboBox2->Text=AnsiString(int(sys_date.da_mon));
Form3->suiComboBox3->Text=AnsiString(int(sys_date.da_day));
Form3->suiComboBox4->Text=AnsiString(record_clock.hour);
Form3->suiComboBox5->Text=AnsiString(record_clock.minute);
Form3->suiComboBox6->Text=AnsiString(record_clock.second);
//文件修改時間
Form3->Label4->Caption=AnsiString(FileDateToDateTime(FileAge(AnsiString(DataFileName))));
Form3->Label4->Hint=AnsiString(FileDateToDateTime(FileAge(AnsiString(DataFileName))));
//波形參數
fvmax=trial_ad_memtovalue(trial,trial->ap_param[num].vmax+broad_ad_zero,0);
fvmax=fvmax*1000.0/trial->sample_inter;
Form3->suiEdit1->Text=AnsiString(int(fvmax));
rp=(int)trial_ad_memtovalue(trial,trial->ap_param[num].rp+broad_ad_zero,0);
Form3->suiEdit2->Text=AnsiString(rp);
apa=(int)trial_ad_memtovalue(trial,trial->ap_param[num].apa+broad_ad_zero,0);
Form3->suiEdit3->Text=AnsiString(apa-rp);
Form3->suiEdit4->Text=AnsiString(apa);
apd=trial_time_pointtovalue(trial,trial->ap_param[num].apd20);
Form3->suiEdit5->Text=AnsiString(apd);
apd=trial_time_pointtovalue(trial,trial->ap_param[num].apd50);
Form3->suiEdit6->Text=AnsiString(apd);
apd=trial_time_pointtovalue(trial,trial->ap_param[num].apd90);
Form3->suiEdit7->Text=AnsiString(apd);
fc=(short int)trial_ad_memtovalue(
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -