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

📄 salary_r.cpp

📁 C++Builde5程序设计—基础教学篇程序源代码1。
💻 CPP
字号:
//-------------------  salary_r  --------------------------------------------------------
#include <stdio.h>
#include<io.h>
#include "salary_r.h"
#include "salary_m.h"
#include <vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
struct employee_struct
{
  int order;
  char name[12];
  int salary;
  int add;
};
employee_struct employee;
int total_record;
FILE *file1;
TfrmSalaryRecord *frmSalaryRecord;
//---------------------------------------------------------------------------
__fastcall TfrmSalaryRecord::TfrmSalaryRecord(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmSalaryRecord::FormActivate(TObject *Sender)
{
  char *file_name="a:/ch14/salary.mny";
  file1=fopen(file_name,"a+");
  total_record=filelength(fileno(file1))/sizeof(employee)+1;
  edtOrder->Text=IntToStr(total_record);
  edtName->Text="";
  edtSalary->Text="";
  edtAdd->Text="";
  edtName->SetFocus();
}
//---------------------------------------------------------------------------
void __fastcall TfrmSalaryRecord::btnNextClick(TObject *Sender)
{
   employee.order=total_record;
   strcpy(employee.name,edtName->Text.c_str());
   employee.salary=StrToInt(edtSalary->Text);
   employee.add=StrToInt(edtAdd->Text);
   fseek(file1,sizeof(employee)*(total_record-1),SEEK_SET);
   fwrite(&employee,sizeof(employee),1,file1);
   total_record++;
   edtOrder->Text=IntToStr(total_record);
   edtName->Text="";
   edtSalary->Text="";
   edtAdd->Text="";
}
//---------------------------------------------------------------------------
void __fastcall TfrmSalaryRecord::btnExitClick(TObject *Sender)
{
  if(edtName->Text !="")
  {
    employee.order=total_record;
    strcpy(employee.name,edtName->Text.c_str());
    employee.salary=StrToInt(edtSalary->Text);
    employee.add=StrToInt(edtAdd->Text);
    fseek(file1,sizeof(employee)*(total_record-1),SEEK_SET);
    fwrite(&employee,sizeof(employee),1,file1);
  }
  fclose(file1);
  frmSalaryRecord->Hide();
  frmSalaryMain->Show();
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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