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

📄 initform.cpp

📁 基于USB接口的GPS应用程序
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#include <time.h>
#include <stdio.h>

#pragma hdrstop

#include "InitForm.h"
#include "display.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TInitializeForm *InitializeForm;
//---------------------------------------------------------------------------
__fastcall TInitializeForm::TInitializeForm(TComponent* Owner)
        : TForm(Owner)
{
 RadioGroup1->ItemIndex = 0;
 YearComboBox->Enabled = false;
 MonComboBox->Enabled = false;
 DayComboBox->Enabled = false;
 HourComboBox->Enabled = false;
 MinComboBox->Enabled = false;
 YearComboBox->Color=clMenu;
 MonComboBox->Color=clMenu;
 DayComboBox->Color = clMenu;
 HourComboBox->Color = clMenu;
 MinComboBox->Color = clMenu;

 YearComboBox->ItemIndex=0;
 MonComboBox->ItemIndex=0;
 DayComboBox->ItemIndex = 0;
 HourComboBox->ItemIndex = 0;
 MinComboBox->ItemIndex = 0;

 parent_pt = reinterpret_cast<TForm1*> (Owner);

 Edit1->Text = FloatToStr(parent_pt->getlongi());
 Edit2->Text = FloatToStr(parent_pt->getlati());
 Edit3->Text = FloatToStr(parent_pt->getalti());

 Edit4->Text = parent_pt->getalmfilenm();
 AlmFileHandle = NULL;
}
//---------------------------------------------------------------------------
void __fastcall TInitializeForm::Button1Click(TObject *Sender)
{
 OpenDialog1->DefaultExt = "ALM";
 OpenDialog1->Filter = "ALM files (*.alm)|TXT files (*.txt)|*.txt|*.alm|All files (*.*)|*.*";
 OpenDialog1->FileName = "*.alm";
 OpenDialog1->InitialDir = ".";

 if(OpenDialog1->Execute())
 {
  AlmFileName=OpenDialog1->FileName;
  AlmFileHandle = fopen( AlmFileName.c_str(),"r");
  Edit4->Text = OpenDialog1->FileName;
 }


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

void __fastcall TInitializeForm::RadioGroup1Click(TObject *Sender)
{
 if(RadioGroup1->ItemIndex == 1)  // input UTC time manually
 {
  YearComboBox->Enabled = true;
  MonComboBox->Enabled =  true;
  DayComboBox->Enabled = true;
  HourComboBox->Enabled = true;
  MinComboBox->Enabled = true;

  YearComboBox->Color= clWindow;
  MonComboBox->Color= clWindow;
  DayComboBox->Color = clWindow;
  HourComboBox->Color = clWindow;
  MinComboBox->Color = clWindow;
 }
 else  // use system time
 {
  YearComboBox->Enabled = false;
  MonComboBox->Enabled = false;
  DayComboBox->Enabled = false;
  HourComboBox->Enabled = false;
  MinComboBox->Enabled = false;

  YearComboBox->Color=clMenu;
  MonComboBox->Color=clMenu;
  DayComboBox->Color = clMenu;
  HourComboBox->Color = clMenu;
  MinComboBox->Color = clMenu;
 }
}
//---------------------------------------------------------------------------

void __fastcall TInitializeForm::FormDestroy(TObject *Sender)
{
 if( AlmFileHandle )
  fclose(AlmFileHandle);
}
//---------------------------------------------------------------------------

void TInitializeForm::setlla(double lngi, double lati,double alti)
{
 llh[0] = lngi;
 llh[1] = lati;
 llh[2] = alti;
}
void TInitializeForm::setalmfile( AnsiString s)
{
 AlmFileName = s;
}

void __fastcall TInitializeForm::BitBtn1Click(TObject *Sender)
{

 struct tm *gmt;
 time_t curtime;
 // get long, lat, alt
 llh[0] = StrToFloat(Edit1->Text);
 llh[1] = StrToFloat(Edit2->Text);
 llh[2] = StrToFloat(Edit3->Text);
 // store in form1
 parent_pt->setlongi(llh[0]);
 parent_pt->setlati(llh[1]);
 parent_pt->setalti(llh[2]);

 // get time setting
 if(RadioGroup1->ItemIndex == 1)  // input UTC time manually
 {
 // struct tm {
 //  int tm_sec;             /* Seconds */
 //  int tm_min;             /* Minutes */
 //  int tm_hour;            /* Hour (0 - 23) */
 //  int tm_mday;            /* Day of month (1 - 31) */
 //  int tm_mon;             /* Month (0 - 11) */
 //  int tm_year;            /* Year (calendar year minus 1900) */
 //  int tm_wday;            /* Weekday (0 - 6; Sunday is 0) */
 //  int tm_yday;            /* Day of year (0 -365) */
 //  int tm_isdst;           /* Nonzero if daylight saving time is in effect. */
 // };

  gmt = new tm;
  gmt->tm_sec = 0;
  gmt->tm_min = MinComboBox->ItemIndex;
  gmt->tm_hour = HourComboBox->ItemIndex;
  gmt->tm_mday = DayComboBox->ItemIndex+1;
  gmt->tm_mon = MonComboBox->ItemIndex;
  gmt->tm_year = YearComboBox->ItemIndex + 100;
  gmt->tm_isdst = 0;  // not daylight saving, must addjust for input
 }
 else
 {
  time(&curtime);
  gmt = gmtime(&curtime);
 }

 if( AlmFileHandle == NULL ) // not set in opendialog
 {
  AlmFileName = Edit4->Text;
  AlmFileHandle = fopen( AlmFileName.c_str(),"r");
 }
 
 parent_pt->setprn(AlmFileHandle, gmt);

 if(RadioGroup1->ItemIndex == 1)  // input UTC time manually
  delete gmt;
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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