📄 stationtuzform.~cpp
字号:
Datam->cad_qry->SQL->Add("select * from tb_tzzl");
Datam->cad_qry->Open();
DBGrid1->Refresh();
int row;
row = DBGrid1->SelectedIndex;
Edit1->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("id")->AsString;
Edit2->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("name")->AsString;
Edit3->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("description")->AsString;
Edit4->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("station_name")->AsString;
Memo1->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("remark")->AsString;
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::BBt_ExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::BBt_FountClick(TObject *Sender)
{
Edit1->Text = "";
Edit2->Text = "";
Edit3->Text = "";
Edit4->Text = "";
Memo1->Text = "";
try
{
Looktzzl = new TLooktzzl(Application);
Looktzzl->ShowModal();
}
__finally
{
delete Looktzzl;
}
int row;
row = DBGrid1->SelectedIndex;
Edit1->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("id")->AsString;
Edit2->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("name")->AsString;
Edit3->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("description")->AsString;
Edit4->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("station_name")->AsString;
Memo1->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("remark")->AsString;
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::BBt_PrintClick(TObject *Sender)
{
int LeftBlank = 1;
int RightBlank = 1;
int TopBlank = 1;
int BottomBlank = 1;
int PointX,PointY;
int PointScale,PrintStep;
int x,y,i;
String Str;
TPrinter *printer = Printer();
PointX = GetDeviceCaps(printer->Handle,LOGPIXELSX)/2.54;
PointY = GetDeviceCaps(printer->Handle,LOGPIXELSY)/2.54;
PointScale = GetDeviceCaps(printer->Handle,LOGPIXELSX)/Screen->PixelsPerInch+0.5;
printer->Orientation = poLandscape;
printer->Canvas->Font->Name = "宋体";
printer->Canvas->Font->Size = 10;
Str = "谐波管理系统";
PrintStep = printer->Canvas->TextHeight(Str)+16;
x = PointX*LeftBlank;
y = PointY*TopBlank;
if((Datam->cad_qry->Active)&&(Datam->cad_qry->RecordCount>0))
{
printer->BeginDoc();
Datam->cad_qry->First();
while(!Datam->cad_qry->Eof)
{
for(i=0;i<DBGrid1->FieldCount-1;i++)
{
if((x+DBGrid1->Columns->Items[i]->Width*PointScale)<=(printer->PageWidth-PointX*RightBlank))
{
printer->Canvas->Rectangle(x,y,x+DBGrid1->Columns->Items[i]->Width*PointScale,y+PrintStep);
if(y==PointY*TopBlank)
printer->Canvas->TextOutA(x+8,y+8,DBGrid1->Columns->Items[i]->Title->Caption);
else
printer->Canvas->TextOutA(x+8,y+8,DBGrid1->Fields[i]->AsString);
}
x = x+DBGrid1->Columns->Items[i]->Width*PointScale;
}
if(y!=PointY*TopBlank)
Datam->cad_qry->Next();
x = PointX*LeftBlank;
y = y+PrintStep;
if((y+PrintStep)>(printer->PageHeight-PointY*BottomBlank))
{
printer->NewPage();
y = PointY*TopBlank;
}
}
printer->EndDoc();
Datam->cad_qry->First();
MessageDlg("打印完成!",0,TMsgDlgButtons()<<mbOK,0);
}
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::Button2Click(TObject *Sender)
{
OpenDialog1->Title = "请选择CAD图纸";
OpenDialog1->InitialDir = "d:\\";
if(OpenDialog1->Execute())
{
FileName = OpenDialog1->FileName;
}
else
FileName = "";
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::Button1Click(TObject *Sender)
{
AnsiString RuleID;
TFileName *FName;
char *FileName = "d:\\Temp.dwg";
HANDLE hFile;
bool bfile = false;
Variant cad,cadApp;
RuleID = DBGrid1->Columns->Items[DBGrid1->SelectedIndex]->Field->DataSet->FieldByName("id")->AsString;
while(!Datam->cad_qry->Eof)
{
try
{
if(RuleID==Datam->cad_qry->FieldByName("id")->AsString)
{
if(Datam->cad_qry->FieldByName("file_content")->IsNull)
{
ShowMessage("没有CAD图纸!");
break;
}
else
{
try
{
cad = Variant::CreateObject("autocad.Application");
cad.OlePropertySet("Visible", true);
}
catch(...)
{
ShowMessage("你还没有安装AuTo CAD!");
return;
}
bfile = true;
hFile = CreateFile(FileName, // create MYFILE.TXT
GENERIC_WRITE, // open for writing
0, // do not share
NULL, // no security
CREATE_ALWAYS, // overwrite existing
FILE_ATTRIBUTE_NORMAL,
NULL); // no attr. template
if (hFile == INVALID_HANDLE_VALUE)
{
ShowMessage("打开文档失败!重新打开");
return; // process error
}
CloseHandle(hFile);
TBlobField *p = (TBlobField *)(Datam->cad_qry->FieldByName("file_content"));
p->SaveToFile("D:\\Temp.dwg");
break;
}
}
}
catch(...)
{
ShowMessage("文件格式无效");
break;
}
Datam->zhidu_qry->Next();
}
if(bfile)
{
try
{
ShellExecute(NULL,"open",_T("Temp.dwg"),NULL,_T("d:\\"),0);
}
catch(...)
{
ShowMessage("打开文件失败!");
}
}
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::Edit1KeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if (Key==VK_TAB)
{
Edit2->SetFocus();
}
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::Edit2KeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if (Key==VK_TAB)
{
Edit3->SetFocus();
}
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::Edit3KeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if (Key==VK_TAB)
{
Edit4->SetFocus();
}
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::Edit4KeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if (Key==VK_TAB)
{
Memo1->SetFocus();
}
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::DBNavigator1Click(TObject *Sender,
TNavigateBtn Button)
{
int row;
row = DBGrid1->SelectedIndex;
Edit1->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("id")->AsString;
Edit2->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("name")->AsString;
Edit3->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("description")->AsString;
Edit4->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("station_name")->AsString;
Memo1->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("remark")->AsString;
}
//---------------------------------------------------------------------------
void __fastcall Tstationtzgl::DBGrid1CellClick(TColumn *Column)
{
int row;
row = DBGrid1->SelectedIndex;
Edit1->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("id")->AsString;
Edit2->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("name")->AsString;
Edit3->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("description")->AsString;
Edit4->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("station_name")->AsString;
Memo1->Text = DBGrid1->Columns->Items[row]->Field->DataSet->FieldByName("remark")->AsString;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -