コード例 #1
0
ファイル: NoSenseRestPropFrm.cpp プロジェクト: Pala4/ModelCad
//---------------------------------------------------------------------------
void __fastcall TFNoSenseRestProp::BtOkClick(TObject *Sender)
{
   TEdit *Ex;
   try
   {
      Ex = EA;
   	A = StrToFloat(EA->Text);
      Ex = EB;
   	B = StrToFloat(EB->Text);
      Ex = EA;
   	K = StrToFloat(EK->Text);
      Ex = EdX;
   	dX = StrToFloat(EdX->Text);
      Ex = EdY;
   	dY = StrToFloat(EdY->Text);
   }
   catch(...)
   {
      Application->MessageBoxA("Неверный формат числа", "Floating Poitn Error",
                               MB_OK | MB_ICONERROR);
      Ex->SetFocus();
   	return;
   }
	ResultOk = true;
   Close();
}
コード例 #2
0
ファイル: Unit1.cpp プロジェクト: DSG888/SibSUTIS
//---------------------------------------------------------------------------
//Вывод на экран результатов расчета
void kutt2(double yp1, double yp2, double x){
	double k1, k2, k3, k4;
        double k11, k22, k33, k44, gn, gx=StrToFloat(Form1->x1N->Text), y1=yp1, y2=yp2;
	int i, step;

        Form1->Memo1->Lines->Add("x="+Form1->x1N->Text+"; y="+FloatToStr(yp1));
        for(step=0; step<n; step++){
                gx+=h;
                gn=(gx-StrToFloat(Form1->x1N->Text))/gh;
                x=StrToFloat(Form1->x1N->Text);
                yp1=y1;
                yp2=y2;
                for(i=0; i<gn; i++){
                	k11=yp2;
                	k1=fnc(yp1, k11, x);

                        k22=yp2+gh/2*k1;
                	k2=fnc(yp1+gh/2*k1, k22, x+gh/2);

                        k33=yp2+gh/2*k2;
                	k3=fnc(yp1+gh/2*k2, k33, x+gh/2);

                	k44=yp2+gh*k2;
                	k4=fnc(yp1+gh*k3, k44, x+gh);

                	yp1=yp1+gh/6*(k11+2*k22+2*k33+k44);
                	yp2=yp2+gh/6*(k1+2*k2+2*k3+k4);

                	x+=gh;
                }
                Form1->Memo1->Lines->Add("x="+FloatToStr(gx)+"; y="+FloatToStr(yp1));
        }
}
コード例 #3
0
ファイル: Nomenklatura.cpp プロジェクト: Zummer/calculate1c
// ---------------------------------------------------------------------------
double TNomenklatura::FindPrice(TTypePrice *typeprice) {
	// готовим запрос
	UnicodeString query, send_params, get_params, s;
	query = "Ќайти÷енуѕо одуЌом“ипу÷ен";
	send_params = code + "|" + harakt + "|" + typeprice->code;
	get_params = "÷ена|Ќаименование|’арактер|≈диница| оэф÷ены";
	// получить цену номеклатуры
	s = ClientModule1->ServerMethods1Client->Find(query, send_params,
		get_params);

	if (s == "") {
		ShowMessage("Ќе указана цена на " + code + ", " + harakt);
		return 0;
	}

	TStringList *sl = new TStringList();
	sl->StrictDelimiter = true;
	sl->Delimiter = '|';
	sl->DelimitedText = s;

	price = StrToFloat(sl->Strings[0]);
	startPrice = StrToFloat(sl->Strings[0]); //зафиксируем стартовую цену
	name = sl->Strings[1];
	harakt = sl->Strings[2];
	unit = sl->Strings[3];
	ratioPrice = StrToFloat(sl->Strings[4]);

	delete sl;
	sl = NULL;
	return price;
}
コード例 #4
0
/*! 
 *  \brief  文本控件通知
 *  \details  当文本通过键盘更新(或调用GetControlValue)时,执行此函数
 *  \param screen_id 画面ID
 *  \param control_id 控件ID
 *  \param str 文本控件内容 形式为: 【该位可能没有】 32  2E 31 34 00
 */
void NotifyText(uint16 screen_id, uint16 control_id, uint8 *str, Water_Param *InterfaceParam)
{
	//TODO: 添加用户代码
	if (screen_id == 1&& control_id == 3) //更新设置页面的斜率
	{       
		InterfaceParam->Water_k = StrToFloat(str);
		return;
	}
	else if (screen_id == 1&& control_id == 4) //更新设置页面的截距
	{
		InterfaceParam->Water_b = StrToFloat(str);
		return;
	}/*
	else if (screen_id == 1&& control_id == 5) //更新设置页面的量程
	{
		return;
	}*/
	else if (screen_id == 1&& control_id == 7) //更新设置页面的 KI
	{       
		InterfaceParam->PID_Ki = StrToFloat(str);
		return;
	}
	else if (screen_id == 1&& control_id == 6) //更新设置页面的 Kp
	{        
		InterfaceParam->PID_Kp = StrToFloat(str);
		return;
	}
	else if (screen_id == 1&& control_id == 8) //更新设置页面的 Kd
	{      
		InterfaceParam->PID_Kd = StrToFloat(str);
		return;
	}
	return;
}
コード例 #5
0
ファイル: Sharpness1.cpp プロジェクト: beaver999/mygoodjob
//---------------------------------------------------------------------------
bool TSharpnessForm1::Load_SP(String Fpath)
{
        char* buffer = Load_File(Fpath);
        char* pch;
        pch = strtok (buffer,"\n\t");
        int c= 0;

        AnsiString str[5];
        str[0] = "TEXT_DET";
        str[1] = "HORZ_THR";
        str[2] = "VERT_THR";
        str[3] = "EDGE_THR";
        str[4] = "GLT_STR";     //hardwre gain
        while (c < 38 && pch!=NULL){
                if(pch == NULL){
                        ShowMessage("Data Missing.");
                        delete [] buffer;
                        return 0;
                       //資料中的data缺少
                }

                if(c==0){   //TD
                        for(int i = 0; i < OSP->SPChkBox_Nbr; i++){
                                if(SameText(ChkB[i]->Addr.Name(),str[0])){
                                         ChkB[i]->Chkb->Checked = (StrToInt((AnsiString)pch)>0?1:0);
                                         ChkB[i]->Chkb->OnClick;
                                         break;
                                }
                        }
                }else if(c>=1 && c<=3){  //HORZ_THR, VERT_THR, EDGE_THR
                        for(int i = 0; i < OSP->SPScrollBar_Nbr; i++){
                                if(SameText(ScrlB[i]->Addr.Name(),str[c])){
                                        ScrlB[i]->ScrlB->Position = (StrToInt((AnsiString)pch));
                                        ScrlB[i]->ScrlB->OnChange;
                                        break;
                                }
                        }
                }else if(c==4){ //hardware gain
                        for(int i = 0; i < OSP->SPScrollBar_Nbr; i++){
                                if(SameText(ScrlB[i]->Addr.Name(),str[c])){
                                        float tmp = (StrToFloat((AnsiString)pch));
                                        ScrlB[i]->ScrlB->Position = int(tmp*4);
                                        ScrlB[i]->ScrlB->OnChange;
                                        break;
                                }
                        }
                }else if(c==5){   //swg
                        sb_softgain->Position = StrToFloat((AnsiString)pch)*10;
                        
                }else{            //tbl
                        SP_lut[c-6] = StrToInt((AnsiString)pch);
                }
                pch = strtok (NULL,"\n\t");
                c++;
                if(c>=38)
                        break;
        }
        delete [] buffer;
        return 1;
}
コード例 #6
0
void __fastcall TForm1::Button1Click(TObject *Sender)
{       float alfa, k, v, Vxn, Vxs, Vyn, Vys, xn ,xs, yn, ys;
        AnsiString  alfastr, xsstr;
        v = StrToFloat(Edit1->Text.c_str());
        k = StrToFloat(Edit2->Text.c_str());
        alfa = StrToFloat(Edit3->Text.c_str())*M_PI/180;
        xs = 0;
        ys = 0;
        Vxs=v*cos(alfa);
        Vys=v*sin(alfa);
        while (yn >= 0)
        {
                xn=xs+Vxs*h;
                yn=ys+Vys*h;
                Vxn=Vxs*(1-k*h);
                Vyn=Vys-(9.8+k*Vys)*h;
                Series1->AddXY(xn,yn,"",CColorGrid1->ForegroundColor);
                xs=xn;
                ys=yn;
                Vys=Vyn;
                Vxs=Vxn;
        }
        alfastr = FormatFloat("0.00", StrToFloat(Edit3->Text.c_str()));
        xsstr = FormatFloat("0.00", xs);
        Memo1->Lines->Add("Angle: " + alfastr + "   Dist: " + xsstr);
}
コード例 #7
0
//---------------------------------------------------------------------------
void __fastcall TFrDeviceExplorer::btnWriteClick(TObject *Sender)
{
	TBluetoothLEDevice * ADevice = NULL;
	ADevice = GetCurrentDevice();
	if(ADevice != NULL) {
		TBluetoothGattService * AService = ADevice->Services->Items[CurrentService];
		TBluetoothGattCharacteristic * AChar = AService->Characteristics->Items[CurrentCharacteristic];
		if((AChar->Properties.Contains(TBluetoothProperty::Write)) || (AChar->Properties.Contains(TBluetoothProperty::WriteNoResponse))
			|| (AChar->Properties.Contains(TBluetoothProperty::SignedWrite)))
		{
			if(CbWriteTypes->ItemIndex ==  0) AChar->SetValueAsString(EdCharacWrite->Text);
			if(CbWriteTypes->ItemIndex ==  1) AChar->SetValueAsString(EdCharacWrite->Text, false);
			if(CbWriteTypes->ItemIndex ==  2) AChar->SetValueAsUInt8(UInt8(StrToInt(EdCharacWrite->Text)));
			if(CbWriteTypes->ItemIndex ==  3) AChar->SetValueAsUInt16(UInt16(StrToInt(EdCharacWrite->Text)));
			if(CbWriteTypes->ItemIndex ==  4) AChar->SetValueAsUInt32(UInt32(StrToInt(EdCharacWrite->Text)));
			if(CbWriteTypes->ItemIndex ==  5) AChar->SetValueAsUInt64(StrToInt(EdCharacWrite->Text));
			if(CbWriteTypes->ItemIndex ==  6) AChar->SetValueAsInt8(Int8(StrToInt(EdCharacWrite->Text)));
			if(CbWriteTypes->ItemIndex ==  7) AChar->SetValueAsInt16(Int16(StrToInt(EdCharacWrite->Text)));
			if(CbWriteTypes->ItemIndex ==  8) AChar->SetValueAsInt32(Int32(StrToInt(EdCharacWrite->Text)));
			if(CbWriteTypes->ItemIndex ==  9) AChar->SetValueAsInt64(StrToInt(EdCharacWrite->Text));
			if(CbWriteTypes->ItemIndex == 10) AChar->SetValueAsDouble(StrToFloat(EdCharacWrite->Text));
			if(CbWriteTypes->ItemIndex == 11) AChar->SetValueAsSingle(StrToFloat(EdCharacWrite->Text));
			ADevice->WriteCharacteristic(AChar);
		}
		else {
			ShowMessage("This characteristic doesn''t allow Write");
        }
	}
	else {
		ShowMessage(EdCurrentDevice->Text + " is not available");
	}
}
コード例 #8
0
ファイル: Unit_Result_1.cpp プロジェクト: Medcheg/sources_old
//===========================================================================
void __fastcall Tform_Result_1::Button4Click(TObject *Sender)
{
    if ( TabControl1->Tabs->Count         <    2 ) return;
    if ( *pCountSelectedStorageParts      <    2 ) return;
    if ( ComboBox1->ItemIndex            ==   -1 ) return;
    if ( StringGrid1->Cells[1][1].data() == NULL ) return;
    if ( ComboBox2->ItemIndex            ==   -1 ) ComboBox2->ItemIndex = ComboBox1->ItemIndex;

    SetupTableValues(0);
    Application->ProcessMessages();

    double Coriolis_1   = StrToFloat(StringGrid1->Cells[1][ComboBox1->ItemIndex + 1]);
    double Quadrature_1 = StrToFloat(StringGrid1->Cells[1][ComboBox2->ItemIndex + 1]);

    SetupTableValues(1);
    Application->ProcessMessages();

    double Coriolis_2   = StrToFloat(StringGrid1->Cells[1][ComboBox1->ItemIndex + 1]);
    double Quadrature_2 = StrToFloat(StringGrid1->Cells[1][ComboBox2->ItemIndex + 1]);

    SetupTableValues(0);
    Application->ProcessMessages();

    double speed;
    try { speed = StrToFloat(Edit3->Text); } catch ( ... )
    {
       MessageBox(Handle, "No numeric number", "Warning", MB_ICONWARNING|MB_OK);
       Edit3->SetFocus();
       Edit3->SelectAll();
       return;
    }

    // ---- Затычка на деление на ноль -----
    if ( Coriolis_1 - Coriolis_2 == 0 ) Coriolis_1 -= Coriolis_1*0.01;

    // ---- Расчет значений -----
    double mashtab, angle;
    try
    {
        mashtab = (Coriolis_1 - Coriolis_2) / ( 2.0 * speed );
        // *******************
        double sin_angle = 0;
        try { sin_angle = (Quadrature_1 - Quadrature_2) / (Coriolis_1 - Coriolis_2); } catch (...) {}
        if ( sin_angle < -1.0 ) sin_angle = -1.0;
        if ( sin_angle >  1.0 ) sin_angle =  1.0;
        angle = atan(sin_angle) * 180.0 / M_PI;
    }
    catch (...)
    {
        mashtab = 0;
        angle   = 0;
    }

    if ( fabs(mashtab) < 1e-3 )
         Edit1->Text = FloatToStrF(mashtab, ffFixed   , 20, 9);
    else Edit1->Text = FloatToStrF(mashtab, ffFixed   , 20, 10);

    Edit2->Text = FloatToStrF(angle, ffFixed, 20, 5);
}
コード例 #9
0
ファイル: NkEdit.cpp プロジェクト: scorpion235/Archive
// функция обработки события KeyPress в поле компонента NkEdit
void __fastcall TNkEdit::KeyPress(char &Key)
{
    // Коды запрещенных клавиш заменим нулем, в результате
    // эти символы в поле редактирования не появятся

    switch (Key) {
    case '0' :
    case '1' :
    case '2' :
    case '3' :
    case '4' :
    case '5' :
    case '6' :
    case '7' :
    case '8' :
    case '9' :
        break;

    case '.' :
    case ',' :
        Key = DecimalSeparator;
        if (Text.Pos(DecimalSeparator) || (! FEnableFloat))
            Key = 0;
        break;

    case '-' : // знак "минус"
        if (Text.Length()||(FMin >= 0))
            // минус уже введен или FMin >= 0
            Key = 0;
        break;

    case VK_BACK:    // клавиша <Backspace>
    case VK_RETURN:  // клавиша <Enter>
        break;

    default :  // остальные символы запрещены
        Key = 0;
    }

    if ((Key >='0') && (Key <= '9') ) {
        /* Проверим, не приведет ли ввод очередной цифры
           к выходу числа за границы диапазона. Если да,
           то заменим максимально или минимально возможным. */

        AnsiString st = Text + Key;

        if (StrToFloat(st) < FMin) {
            Key = 0;
            Text = FloatToStr(FMin);
        }
        if (StrToFloat(st) > FMax) {
            Key = 0;

            Text = FloatToStr(FMax);
        }
    }
    // вызвать функцию обработки события KeyPress базового класса
    TEdit::KeyPress(Key);
}
コード例 #10
0
ファイル: Unit1.cpp プロジェクト: MihaiCapra/MIDPS
void __fastcall TForm1::Button2Click(TObject *Sender)
{
        float x,y,result;
        x = StrToFloat(Edit1->Text);
        y = StrToFloat(Edit2->Text);
        result = x-y;
        Edit3->Text = result;        
}
コード例 #11
0
ファイル: TColorFrame.cpp プロジェクト: beaver999/mygoodjob
//---------------------------------------------------------------------------
double_array TPointColorFrame::getRGBArray()
{
    double_array result(new double[3]);
    result[0] = StrToFloat(lb_c3d_selR->Caption);
    result[1] = StrToFloat(lb_c3d_selG->Caption);
    result[2] = StrToFloat(lb_c3d_selB->Caption);
    return result;
};
コード例 #12
0
ファイル: Unit1.cpp プロジェクト: frankyrus/BuilderLabs
//---------------------------------------------------------------------------
void __fastcall TForm1::countToWindowClick(TObject *Sender)
{
   if ((RadioGroup1->ItemIndex==0) || ((RadioGroup1->ItemIndex==1) || (RadioGroup1->ItemIndex==2)))
	if ((amountInput->Text!="") && (Currency->Text!=""))
	{
	 MessageDlg((FloatToStr(StrToInt(amountInput->Text)*StrToFloat(Currency->Text))),mtInformation,TMsgDlgButtons() << mbOK,0);
	  Result->Text=(FloatToStr(StrToInt(amountInput->Text)*StrToFloat(Currency->Text)));
	}
}
コード例 #13
0
ファイル: mainForm.cpp プロジェクト: idaohang/GPSDistanceCalc
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    double x1,y1,x2,y2;
    x1 = StrToFloat(Edit1->Text);
    y1 = StrToFloat(Edit2->Text);
    x2 = StrToFloat(Edit3->Text);
    y2 = StrToFloat(Edit4->Text);
    Edit5->Text = FloatToStr(DistanceOfTwoPoints(x1,y1,x2,y2));
}
コード例 #14
0
ファイル: TColorFrame.cpp プロジェクト: beaver999/mygoodjob
double_array TPointColorFrame::getHSIVArray()
{
    double_array result(new double[4]);
    result[0] = StrToFloat(lb_c3d_selH->Caption);
    result[1] = StrToFloat(lb_c3d_selS->Caption);
    result[2] = StrToFloat(lb_c3d_selI->Caption);
    result[3] = StrToFloat(lb_c3d_selV->Caption);
    return result;
};
コード例 #15
0
ファイル: Unit2.cpp プロジェクト: beNative/opcdelphi
//---------------------------------------------------------------------------
void __fastcall TTagForm::FormHide(TObject *Sender)
{
	String	buf;
//	CEdit	*pEdit;
	int	tempi=0;
	float	tempf=0.0;
	WCHAR	*pWCHAR;
//	CWTSvrTestApp	*pApp;

//	pApp = (CWTSvrTestApp *)AfxGetApp();

//	pEdit = (CEdit *)GetDlgItem(IDC_VALUE);
        m_name=Edit1->Text;
        m_description=Edit3->Text;
        m_units=Edit4->Text;
	buf=Edit2->Text;
	switch (m_value.vt)
		{
		case VT_I2:
		     m_value.intVal = StrToInt(buf);
		break;
		case VT_BOOL: if (buf == "true")
				  m_value.boolVal = TRUE;
			      else
				  {
				  tempi = StrToInt(buf);
				  if (tempi > 0)
				    m_value.boolVal = TRUE;
				  else
				    m_value.boolVal = FALSE;
				  }
				break;
		case VT_BSTR: 	pWCHAR = WideString (buf);
				m_value.bstrVal = SysAllocString (pWCHAR);
//					pApp->WSTRFree (pWCHAR);
				break;
		default: tempf= StrToFloat(buf);
			 m_value.fltVal = tempf;
			 break;
		}
		m_enabled[3] = CheckBox1->Checked;
		m_enabled[2] = CheckBox2->Checked;
		m_enabled[1] = CheckBox3->Checked;
		m_enabled[0] = CheckBox4->Checked;

		m_alarms[3] = StrToFloat(Edit5->Text);
		m_alarms[2] = StrToFloat(Edit7->Text);
		m_alarms[1] = StrToFloat(Edit9->Text);
		m_alarms[0] = StrToFloat(Edit11->Text);

		m_severity[3] = StrToInt(Edit6->Text);
		m_severity[2] = StrToInt(Edit8->Text);
		m_severity[1] = StrToInt(Edit10->Text);
		m_severity[0] = StrToInt(Edit12->Text);

}
コード例 #16
0
ファイル: Unit_Result_1.cpp プロジェクト: Medcheg/sources_old
//===========================================================================
void __fastcall Tform_Result_1::Panel1DblClick(TObject *Sender)
{
    if ( isUsedPasha == false ) return;

    if ( StrToFloat(StringGrid1->Cells[1][3]) > 500 )
         Edit2->Text = FloatToStr(StrToFloat(Edit2->Text) * StrToFloat(StringGrid1->Cells[1][14]) / 360.0 );
    else Edit2->Text = FloatToStr(StrToFloat(Edit2->Text) * StrToFloat(StringGrid1->Cells[1][ 3]) / 360.0 );


}
コード例 #17
0
void __fastcall TForm1::Button6Click(TObject *Sender)
{
        float k, alfa, x, v, d, vn, vs, Vxn, Vxs, Vyn, Vys, xn=0 ,xs=0, yn=0, ys=0;
        int i;
        AnsiString vstr;
        k = StrToFloat(Edit2->Text.c_str());
        alfa = StrToFloat(Edit4->Text.c_str())*M_PI/180;
        d = StrToFloat(Edit5->Text.c_str());
        x = 0.1;
        while (xn < d)
        {
                v = v+x;
                xs = 0;
                ys = 0;
                xn=0;
                Vxs=v*cos(alfa);
                Vys=v*sin(alfa);
                while (yn >= 0)
                {
                        xn=xs+Vxs*h;
                        yn=ys+Vys*h;
                        Vxn=Vxs*(1-k*h);
                        Vyn=Vys-(9.8+k*Vys)*h;
                        xs=xn;
                        ys=yn;
                        Vys=Vyn;
                        Vxs=Vxn;
                }
                yn=0;
        }
        for (i = 0; i < 10; i++)
        {
                if (xn==d) break;
                else if (xn < d) v = (v+(v+x))/2;
                else v = (v+(v-x))/2;
                xs = 0;
                ys = 0;
                Vxs=v*cos(alfa);
                Vys=v*sin(alfa);
                while (yn >= 0)
                {
                        xn=xs+Vxs*h;
                        yn=ys+Vys*h;
                        Vxn=Vxs*(1-k*h);
                        Vyn=Vys-(9.8+k*Vys)*h;
                        xs=xn;
                        ys=yn;
                        Vys=Vyn;
                        Vxs=Vxn;
                }
                x = x/2;
        }
        vstr = FormatFloat("0.00",v);
        Memo3->Lines->Add(vstr);
}
コード例 #18
0
ファイル: FormularioHMap.cpp プロジェクト: riseven/GaaModeler
//---------------------------------------------------------------------------
void __fastcall TFormParamHMap::BotonOKClick(TObject *Sender)
{
        X = StrToFloat(EditX->Text);
	Y = StrToFloat(EditY->Text);
	Z = StrToFloat(EditZ->Text);
        Escala = StrToFloat(EditEscala->Text);
        Altura = StrToFloat(EditAltura->Text);
        Fichero = EditFichero->Text ;
        EsOK = true;
        ModalResult = mrOk;
}
コード例 #19
0
//---------------------------------------------------------------------------
void __fastcall TFormParamCilindro::BotonOKClick(TObject *Sender)
{
	X = StrToFloat(EditX->Text);
	Y = StrToFloat(EditY->Text);
	Z = StrToFloat(EditZ->Text);
	Radio = StrToFloat(EditRadio->Text);
    Paralelos = StrToInt(EditParalelos->Text);
    Altura = StrToFloat(EditAltura->Text);
    EsOK = true;
    ModalResult = mrOk;
}
コード例 #20
0
//---------------------------------------------------------------------------
void __fastcall TFormParamEsfera::BotonOKClick(TObject *Sender)
{
	X = StrToFloat(EditX->Text);
	Y = StrToFloat(EditY->Text);
	Z = StrToFloat(EditZ->Text);
	Radio = StrToFloat(EditRadio->Text);
        Paralelos = StrToInt(EditParalelos->Text);
        Meridianos = StrToInt(EditMeridianos->Text);
        EsOK = true;
        ModalResult = mrOk;
}
コード例 #21
0
//===========================================================================
void __fastcall TfrmDeviceSetting::bOkClick(TObject *Sender)
{
	char mess[4096];
    ModalResult = mrNone;

  // ----- Проверка на тип Девайса -----
    if ( WorkDevice->DeviceType == edtNone)
    {
        MessageBox(Handle, "Type of device was not set", "Error", MB_OK|MB_ICONERROR|MB_TASKMODAL);
        return;
    }

  // ----- Проверка на ComPortName -----
    if ( WorkDevice->ComPortName == NULL )
    {
        MessageBox(Handle, "Select COM port please", "Error", MB_OK|MB_ICONERROR|MB_TASKMODAL);
        return;
    }

  // ----- Проверка на FileName -----
    if ( WorkDevice->Storage->file_Param.FileName == NULL) {
        MessageBox(Handle, "Name of the file to be saved was not set", "Error", MB_OK|MB_ICONERROR|MB_TASKMODAL);
        return;
    }

  // ----- Проверка ScaleFactor -----
    float oldVal = WorkDevice->Storage->file_Param.ScaleFactor[0];
    try
    {
        WorkDevice->Storage->file_Param.ScaleFactor[0] = StrToFloat(eScaleFactor->Text);
    }
    catch ( ... )
    {
        WorkDevice->Storage->file_Param.ScaleFactor[0] = oldVal;
        eScaleFactor->SetFocus();
        eScaleFactor->SelectAll();

        MessageBox(Handle, "Non numeric number", "Error", MB_OK|MB_ICONERROR|MB_TASKMODAL);
        return;
    }

    WorkDevice->SamplingFreq = StrToFloat( cbSamplingFrequency->Text );
    WorkDevice->WorkTime     = StrToFloat( edit_WorkTime->Text       );
    WorkDevice->isWorkTimeEnabled  = checkbox_WorkTime->Checked;

    if ( isWasErrorInKeyGridValue == false ) ModalResult = mrOk;

    // ---- Если у заказыика, тогда принудиловка ------
    if ( isDebugMode == false && WorkDevice->DeviceType == edtCVGx )
    {
	    WorkDevice->ExtendedParamValues[0] = 3;
    }
}
コード例 #22
0
ファイル: Unit1.cpp プロジェクト: frankyrus/BuilderLabs
void __fastcall TForm1::calculateClick(TObject *Sender)
{
if ((textSpace->Lines->Strings[0]!="" ) && (textSpace->Lines->Strings[1]!=""))
if ((CheckBox1->Checked) && ((CheckBox2->Checked==False) && (CheckBox3->Checked==False)))
   textSpace->Lines->Add(FloatToStr(StrToInt(textSpace->Lines->Strings[0])*StrToFloat(textSpace->Lines->Strings[1])));
  else
  if ((CheckBox2->Checked) && ((CheckBox1->Checked==False) && (CheckBox3->Checked==False)))
	   textSpace->Lines->Add(FloatToStr(StrToInt(textSpace->Lines->Strings[0])*StrToFloat(textSpace->Lines->Strings[1])));
    else
	 if ((CheckBox3->Checked) && ((CheckBox1->Checked==False) && (CheckBox2->Checked==False)))
		  textSpace->Lines->Add(FloatToStr(StrToInt(textSpace->Lines->Strings[0])*StrToFloat(textSpace->Lines->Strings[1])));
}
コード例 #23
0
ファイル: kwd.cpp プロジェクト: efiku/ZadaniaCpp
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   try
   {
        if(Edit1->Text == "" ||
           Edit2->Text == "" ||
           Edit3->Text == ""
          )
          {
          ShowMessage("Powinienes uzupelnic wszystkie pola");

          }
          else
     {

        double va,vb,vc;
        va =  StrToFloat(Edit1->Text)  ;
        vb =  StrToFloat(Edit2->Text)  ;
        vc =  StrToFloat(Edit3->Text)  ;


        efik::CDelta *Delta = new efik::CDelta(va,vb,vc);

        Edit4->Text = FloatToStr(Delta->Delta());
        Label7->Caption = Delta->PodajWynik().c_str();

        ShowMessagePos("Delta obliczona - Ziemia ocalona!", 100, 20 );
        delete Delta;
        Delta = NULL;
        


      }
   }
   catch( EConvertError &exc )
   {
        Application->ShowException(&exc);
        Edit1->Clear();
         Edit2->Clear();
          Edit3->Clear();
           Edit4->Clear();
           Label7->Caption = "";
            
   }







}
コード例 #24
0
//---------------------------------------------------------------------------
void __fastcall TfrmKalanFilterParam::bbOkClick(TObject *Sender) { TfrmBaseDialog::bbOkClick(Sender);

   bool Result = true;

   try {*p11  = StrToFloat(eP11->Text); } catch ( ... ) { Result = false; eP11 ->SetFocus(); eP11 ->SelectAll(); InputError_None_Digital_Value(Handle);}
   try {*p12  = StrToFloat(eP12->Text); } catch ( ... ) { Result = false; eP12 ->SetFocus(); eP12 ->SelectAll(); InputError_None_Digital_Value(Handle);}
   try {*p22  = StrToFloat(eP22->Text); } catch ( ... ) { Result = false; eP22 ->SetFocus(); eP22 ->SelectAll(); InputError_None_Digital_Value(Handle);}
   try {*N    = StrToFloat(eN->Text);   } catch ( ... ) { Result = false; eN   ->SetFocus(); eN   ->SelectAll(); InputError_None_Digital_Value(Handle);}
   try {*PFil = StrToFloat(ePFil->Text);} catch ( ... ) { Result = false; ePFil->SetFocus(); ePFil->SelectAll(); InputError_None_Digital_Value(Handle);}
   *CalcFiltrWithBeginInit = RadioButton1->Checked;

   if (Result) Close();
}
コード例 #25
0
ファイル: raporayar.cpp プロジェクト: hasanozgan/win-mts
void __fastcall TfrmRaporSecimi::HareketRaporuOncesiHazirlik(void)
{
    frmHareketRaporu->querySTOKANA->Active = false;
    frmHareketRaporu->querySTOKANA->ParamByName("DEPARTMAN")->AsString = comboDepartmanBaslangic->Text;
    frmHareketRaporu->querySTOKANA->ParamByName("CINSI")->AsString = "%"+comboStokCinsiBaslangic->Text+"%";
    frmHareketRaporu->querySTOKANA->ParamByName("BASLANGICKODU")->AsFloat = StrToFloat(editBaslangicStokKodu->Text);
    frmHareketRaporu->querySTOKANA->ParamByName("BITISKODU")->AsFloat = StrToFloat(editBitisStokKodu->Text);
    frmHareketRaporu->querySTOKANA->Active = true;

    frmHareketRaporu->querySTOKDURUMU->Active = false;
    frmHareketRaporu->querySTOKDURUMU->Active = true;

    frmHareketRaporu->qrlabelDEPARTMAN->Caption = comboDepartmanBaslangic->Text;
}
コード例 #26
0
ファイル: file4.cpp プロジェクト: File5/Auto_diagram
void __fastcall TForm1::Button2Click(TObject *Sender)
{
double a = StrToFloat(Edit3->Text);
double b = StrToFloat(Edit4->Text);
double c = StrToFloat(Edit5->Text);
z = calculate(1, 2)+1/2.;
z = f() + fabs(pow(x - sin(y),1/3.));
z = fabs(pow(y+9/5.+f(1, 2),1/3.));
z = func(a(1/2.,1/2.),3);
z=mas[i+2]+1/2.;
double ans = arifm((a + b) / (a - c * b), b * b - 2 * a * c, 3 * pow(c, a - b)) -
             arifm((c + a) / (a * b), sqrt(b) / pow(a, 1. / 3), pow(a, b + 1. / c));
ShowMessage(FloatToStr(ans));
}
コード例 #27
0
ファイル: UThdSend.cpp プロジェクト: code4hunter/oldpts
//---------------------------------------------------------------------------
int __fastcall TThdSend::GetInfo(String SecuID)
{
  int loc = TRjlSysVar()()->DatDyn->GetLoc(SecuID);
  
  FZXJ      = StrToFloat(TRjlSysVar()()->DatDyn->GetField(loc,dtCp))/1000;
  FPrice[0] = StrToFloat(TRjlSysVar()()->DatDyn->GetField(loc,dtCbp))/1000;//Info.Price1;
  FPrice[1] = StrToFloat(TRjlSysVar()()->DatDyn->GetField(loc,dtBp2))/1000;//Info.Price2;
  FPrice[2] = StrToFloat(TRjlSysVar()()->DatDyn->GetField(loc,dtBp3))/1000;//Info.Price3;
  FVolum[0] = StrToInt(TRjlSysVar()()->DatDyn->GetField(loc,dtBv1));//Info.Volum1;
  FVolum[1] = StrToInt(TRjlSysVar()()->DatDyn->GetField(loc,dtBv2));//Info.Volum2;
  FVolum[2] = StrToInt(TRjlSysVar()()->DatDyn->GetField(loc,dtBv3));//Info.Volum3;

  return 0;
}
コード例 #28
0
ファイル: type_utils.cpp プロジェクト: FlyingJester/Lithium
/* Numeric types are directly converted. Strings may convert -- see strtoll. Booleans fail. */
struct Error ValueToFloating(const struct Value &v, float &out) {
    struct Error e = {true};
    switch(v.type) {
    case Value::Null:
        e.succeeded = false;
        e.error = "Cannot convert null to float";
        break;
    case Value::Boolean:
        e.succeeded = false;
        e.error = "Cannot convert bool to float";
        break;
    case Value::Integer:
        out = (float)v.value.integer;
        break;
    case Value::Floating:
        out = v.value.floating;
        break;
    case Value::String:
        if(!StrToFloat(v.value.string, &out)) {
            e.succeeded = false;
            e.error = std::string("Cannot convert string ``") + v.value.string + "'' to float";
        }
        break;
    }
    return e;
}
コード例 #29
0
ファイル: HueSatVal1.cpp プロジェクト: beaver999/mygoodjob
//---------------------------------------------------------------------------
void THSVFormOrg::Set_6HSV_grid()
{
    le_ChAangle->Text = ed_Hue_Custom->Text;	//移動的角度
    String str = ed_Hue_Custom->Text;

    //判斷輸入的角度是否合法, type_ok = true(合法,皆為數字), type_ok = false(不合法)
    bool type_ok = true;
    if (str == "") {
	type_ok = false;
    } else {
	for (int i = 0; i < le_ChAangle->Text.Length(); i++) {
	    //逐字元比對, 是否為數字
	    if (!isdigit(*(le_ChAangle->Text.c_str() + i))) {
		type_ok = false;
		break;
	    }
	}
    }

    if (type_ok == false) {	//輸入角度不合法
	sg_6HSV->Cells[0][6] = "";
	sg_6HSV->Cells[1][6] = "";
	sg_6HSV->Cells[2][6] = "";
	return;
    }
    //輸入角度合法

    int tbl_idx = Get_select_idx(StrToFloat(le_ChAangle->Text));
    //選擇變動的HSV值
    sg_6HSV->Cells[0][6] = sg_HSV->Cells[1][tbl_idx + 1];
    sg_6HSV->Cells[1][6] = sg_HSV->Cells[2][tbl_idx + 1];
    sg_6HSV->Cells[2][6] = sg_HSV->Cells[3][tbl_idx + 1];
    Reset_HSVshow();
}
コード例 #30
0
void SimpleAppSettings::SetOptionValue(const char *name, 
                           oaOptionDataType type,
                           const char *value)
{
  assert(name != NULL);
  assert(type != OA_TYPE_INVALID);
  assert(value != NULL);

  oaValue Value;
  switch(type)
  {
    case OA_TYPE_INT:
      Value.Int = atoi(value);
      break;

    case OA_TYPE_FLOAT:
      Value.Float = StrToFloat(value);
      break;

    case OA_TYPE_BOOL:
      Value.Bool = atoi(value) ? OA_TRUE : OA_FALSE;
      break;

    case OA_TYPE_STRING:
      Value.String = (oaString)value;
      break;

    case OA_TYPE_ENUM:
      Value.Enum = (oaString)value;
      break; 
  }

  SetOptionValue(name, type, &Value);
}