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

📄 unit1.cpp

📁 一个医学的软件
💻 CPP
📖 第 1 页 / 共 5 页
字号:
        }
        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 + -