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

📄 ly_unit.pas

📁 地理资源的录入程序运用了api的一些知识
💻 PAS
字号:
unit ly_Unit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, WinSkinStore, WinSkinData,ADODB,DB;

type
  TlyFrm = class(TForm)
    btnok: TBitBtn;
    btnCancel: TBitBtn;
    GroupBox1: TGroupBox;
    Label9: TLabel;
    RadioButton2: TRadioButton;
    GroupBox2: TGroupBox;
    RadioButton1: TRadioButton;
    zypth: TEdit;
    zl: TComboBox;
    yl: TComboBox;
    procedure zlDropDown(Sender: TObject);
    procedure zlSelect(Sender: TObject);
    procedure RadioButton1Click(Sender: TObject);
    procedure RadioButton2Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure btnCancelClick(Sender: TObject);
    procedure btnokClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  lyFrm: TlyFrm;

implementation

uses DataM, lyxxlr;

{$R *.dfm}

procedure TlyFrm.zlDropDown(Sender: TObject);
var
  l:string;
begin

    zl.Items.Clear;
    dm.Qur_dmb.Close;
    dm.Qur_dmb.SQL.Clear;
    dm.Qur_dmb.SQL.Add('select t_dmb.z_dmmc from T_dmb where z_dmlxbm >2 and z_dmlxbm <4');
    dm.Qur_dmb.open;
    dm.Qur_dmb.First;
    while not dm.Qur_dmb.Eof do
     begin
      l:=dm.Qur_dmb.Fields[0].Value;
      zl.AddItem(l,zl);
      dm.Qur_dmb.next;
     end;

end;


procedure TlyFrm.zlSelect(Sender: TObject);
var
  l:string;
begin
   yl.Clear;
   if zl.ItemIndex=0 then
    begin
      yl.Clear;
      dm.Qur_dmb.Close;
      dm.Qur_dmb.SQL.Clear;
      dm.Qur_dmb.SQL.Add('select t_dmb.z_dmmc from t_dmb where Z_dmlxbm >3 and z_dmlxbm < 5 ');
      dm.Qur_dmb.Open;
      dm.Qur_dmb.first;
      while not dm.Qur_dmb.Eof do
      begin
           l:=dm.Qur_dmb.Fields[0].Value;
           yl.AddItem(l,yl);
           dm.Qur_dmb.Next;
      end;

      end
      else
        if zl.ItemIndex=1 then
    begin
      yl.Clear;
      dm.Qur_dmb.Close;
      dm.Qur_dmb.SQL.Clear;
      dm.Qur_dmb.SQL.Add('select t_dmb.z_dmmc from t_dmb where Z_dmlxbm >4 and z_dmlxbm < 6 ');
      dm.Qur_dmb.Open;
      dm.Qur_dmb.first;
      while not dm.Qur_dmb.Eof do
      begin
           l:=dm.Qur_dmb.Fields[0].Value;
           yl.AddItem(l,yl);
           dm.Qur_dmb.Next;
      end;

      end
      else
      if zl.ItemIndex=2 then
    begin
      yl.Clear;
      dm.Qur_dmb.Close;
      dm.Qur_dmb.SQL.Clear;
      dm.Qur_dmb.SQL.Add('select t_dmb.z_dmmc from t_dmb where Z_dmlxbm >5 and z_dmlxbm < 7 ');
      dm.Qur_dmb.Open;
      dm.Qur_dmb.first;
      while not dm.Qur_dmb.Eof do
      begin
           l:=dm.Qur_dmb.Fields[0].Value;
           yl.AddItem(l,yl);
           dm.Qur_dmb.Next;
      end;

      end
      else
        if zl.ItemIndex=3 then
    begin
      yl.Clear;
      dm.Qur_dmb.Close;
      dm.Qur_dmb.SQL.Clear;
      dm.Qur_dmb.SQL.Add('select t_dmb.z_dmmc from t_dmb where Z_dmlxbm >6 and z_dmlxbm < 8 ');
      dm.Qur_dmb.Open;
      dm.Qur_dmb.first;
      while not dm.Qur_dmb.Eof do
      begin
           l:=dm.Qur_dmb.Fields[0].Value;
           yl.AddItem(l,yl);
           dm.Qur_dmb.Next;
      end;

      end
      else
         if zl.ItemIndex=4 then
    begin
      yl.Clear;
      dm.Qur_dmb.Close;
      dm.Qur_dmb.SQL.Clear;
      dm.Qur_dmb.SQL.Add('select t_dmb.z_dmmc from t_dmb where Z_dmlxbm >7 and z_dmlxbm < 9 ');
      dm.Qur_dmb.Open;
      dm.Qur_dmb.first;
      while not dm.Qur_dmb.Eof do
      begin
           l:=dm.Qur_dmb.Fields[0].Value;
           yl.AddItem(l,yl);
           dm.Qur_dmb.Next;
      end;

      end
       else
         if zl.ItemIndex=5 then
    begin
      yl.Clear;
      dm.Qur_dmb.Close;
      dm.Qur_dmb.SQL.Clear;
      dm.Qur_dmb.SQL.Add('select t_dmb.z_dmmc from t_dmb where Z_dmlxbm >8 and z_dmlxbm < 10 ');
      dm.Qur_dmb.Open;
      dm.Qur_dmb.first;
      while not dm.Qur_dmb.Eof do
      begin
           l:=dm.Qur_dmb.Fields[0].Value;
           yl.AddItem(l,yl);
           dm.Qur_dmb.Next;
      end;


      end
      else
  if zl.ItemIndex=6 then
    begin
      yl.Clear;
      dm.Qur_dmb.Close;
      dm.Qur_dmb.SQL.Clear;
      dm.Qur_dmb.SQL.Add('select t_dmb.z_dmmc from t_dmb where Z_dmlxbm >9 and z_dmlxbm < 11 ');
      dm.Qur_dmb.Open;
      dm.Qur_dmb.first;
      while not dm.Qur_dmb.Eof do
      begin
           l:=dm.Qur_dmb.Fields[0].Value;
           yl.AddItem(l,yl);
           dm.Qur_dmb.Next;
      end;

     end;


 end;

procedure TlyFrm.RadioButton1Click(Sender: TObject);
begin
 radiobutton2.Checked :=false;
    
    zypth.Enabled :=true;
    zypth.SetFocus ;
    zl.Enabled :=false;
    yl.Enabled :=false;
    zl.Color :=$00D8D8D8;
    yl.Color :=$00D8D8D8;
    zypth.Color :=clwindow;
    zl.Text :='';
    yl.Text :='';
end;

procedure TlyFrm.RadioButton2Click(Sender: TObject);
begin
 radiobutton1.Checked :=false;
      zypth.Text :='' ;
      zl.Enabled :=true;
      yl.Enabled :=true;
      zl.Color :=clwindow;
      yl.Color :=clwindow;
      zypth.Enabled :=false;
      zypth.Color :=$00D8D8D8;
end;

procedure TlyFrm.FormShow(Sender: TObject);
begin
RadioButton1.Checked :=true;
  zypth.SetFocus ;
  zl.Enabled :=false;
  yl.Enabled :=false;
  zl.Color :=$00D8D8D8;
  yl.Color :=$00D8D8D8;
  zl.Text :='';
  yl.Text :='';
  zypth.Text :='';
end;

procedure TlyFrm.btnCancelClick(Sender: TObject);
begin
Close;
end;

procedure TlyFrm.btnokClick(Sender: TObject);
var
  c,yls,sql: string;
    gxc, dqc:string;
 get_Q   :TADOQuery;
begin
  sql := 'select * from  T_geo_tour where 1>0';

    if radiobutton1.Checked = true  then
        if zypth.Text ='' then
         begin
         MessageBox(self.Handle, '请输入查询条件', '提示', mb_IconInformation + mb_Ok);
         zypth.SetFocus;
         end
         else
           begin
              sql := sql + ' and Z_PTZYBH like ''%' + trim(zypth.Text) + '%''order by z_ptzybh asc';
              dm.lyxx.Close;
              dm.lyxx.SQL.Clear;
              dm.lyxx.SQL.Add(sql);
              dm.lyxx.Open;
              if not dm.lyxx.Eof then
               begin
               lyzylrfrm.GetAll;
               lyzylrfrm.Bitbtn2.Click; //鼠标双击的时候,进入该条记录的编辑状态
               lyfrm.Close;
               end
              else
               begin
                 dm.lyxx.Close;
                 dm.lyxx.SQL.Clear;
                 dm.lyxx.SQL.Add('select * from  T_geo_tour where 1>0 order by z_ptzybh asc');
                 dm.lyxx.Active :=true;
                 MessageBox(self.Handle, '输入查询条件错误!无此资源平台号,请查证!', '提示', mb_IconInformation + mb_Ok);
                 zypth.SetFocus;
               end;
          end
  else
     if radiobutton2.Checked = true  then
     begin
       if zl.Text ='' then
          MessageBox(self.Handle, '请输入查询条件!', '提示', mb_IconInformation + mb_Ok)
       else
         if yl.Text ='' then
         begin
          begin
          get_Q:=TADOQuery.Create(self);
          get_Q.Connection:=dm.conn;
          get_Q.SQL.add('select * from t_dmb where z_dmmc="'+zl.Text+'" and t_dmb.z_dmlxbm=3 ');
          get_Q.open;
          dqc:=trim(get_Q.FieldValues['z_dmbm']);
          get_Q.Close;
          end;
          sql := sql + ' and Z_zl like ''%' + dqc + '%'' order by z_ptzybh asc';
          dm.lyxx.Close;
           dm.lyxx.SQL.Clear;
           dm.lyxx.SQL.Add(sql);
           dm.lyxx.Open;
            if not dm.lyxx.Eof then
               begin
               lyzylrfrm.GetAll;
               lyzylrfrm.Bitbtn2.Click; //鼠标双击的时候,进入该条记录的编辑状态
               lyfrm.Close;
               end
             else
               begin
                 dm.lyxx.Close;
                 dm.lyxx.SQL.Clear;
                 dm.lyxx.SQL.Add('select * from  T_geo_economic where 1>0 order by z_ptzybh asc');
                 dm.lyxx.Active :=true;
                 MessageBox(self.Handle, '输入查询条件错误!无此信息!,请查证!', '提示', mb_IconInformation + mb_Ok);
               end;
         end
         else
         begin
          get_Q:=TADOQuery.Create(self);
          get_Q.Connection:=dm.conn;
          get_Q.SQL.add('select * from t_dmb where z_dmmc="'+zl.Text+'" and t_dmb.z_dmlxbm=3 ');
          get_Q.open;
          dqc:=trim(get_Q.FieldValues['z_dmbm']);
          get_Q.Close;
          sql := sql + ' and Z_zl like ''%' + dqc+ '%''';
              if zl.Text='地文景观' then
          begin
          get_Q:=TADOQuery.Create(self);
          get_Q.Connection:=dm.conn;
          c:=yl.text;
          get_Q.SQL.Text := 'select z_dmbm from t_dmb where t_dmb.z_dmmc=g and t_dmb.z_dmlxbm=4';
          get_q.Parameters.ParamByName('g').Value:=c;
          get_Q.open;
          yls:=trim(get_Q.FieldValues['z_dmbm']);
          get_Q.Close;
          sql := sql+'and Z_yl like ''%' +yls+ '%'' order by z_ptzybh asc ';
           end
        else
        if zl.Text='天象与气候景观' then
         begin
          get_Q:=TADOQuery.Create(self);
          get_Q.Connection:=dm.conn;
          c:=yl.text;
          get_Q.SQL.Text := 'select z_dmbm from t_dmb where t_dmb.z_dmmc=g and t_dmb.z_dmlxbm=5';
          get_q.Parameters.ParamByName('g').Value:=c;
          get_Q.open;
          yls:=trim(get_Q.FieldValues['z_dmbm']);
          get_Q.Close;
          sql := sql+'and Z_yl like ''%' +yls+ '%'' order by z_ptzybh asc';
         end
         else
         if zl.Text='建筑设施' then
         begin

        get_Q:=TADOQuery.Create(self);
        get_Q.Connection:=dm.conn;
        c:=yl.text;
        get_Q.SQL.Text := 'select z_dmbm from t_dmb where t_dmb.z_dmmc=g and t_dmb.z_dmlxbm=6';
        get_q.Parameters.ParamByName('g').Value:=c;
        get_Q.open;
        yls:=trim(get_Q.FieldValues['z_dmbm']);
        get_Q.Close;
        sql := sql+'and Z_yl like ''%' +yls+ '%''order by z_ptzybh asc ';
  end
  else
          if zl.Text='水域景观' then
  begin

        get_Q:=TADOQuery.Create(self);
        get_Q.Connection:=dm.conn;
        c:=yl.text;
        get_Q.SQL.Text := 'select z_dmbm from t_dmb where t_dmb.z_dmmc=g and t_dmb.z_dmlxbm=7';
        get_q.Parameters.ParamByName('g').Value:=c;
        get_Q.open;
        yls:=trim(get_Q.FieldValues['z_dmbm']);
        get_Q.Close;
         sql := sql+'and Z_yl like ''%' +yls+ '%'' order by z_ptzybh asc';
  end
  else
          if zl.Text='生物景观' then
  begin

        get_Q:=TADOQuery.Create(self);
        get_Q.Connection:=dm.conn;
        c:=yl.text;
        get_Q.SQL.Text := 'select z_dmbm from t_dmb where t_dmb.z_dmmc=g and t_dmb.z_dmlxbm=8';
        get_q.Parameters.ParamByName('g').Value:=c;
        get_Q.open;
        yls:=trim(get_Q.FieldValues['z_dmbm']);
        get_Q.Close;
        sql := sql+'and Z_yl like ''%' +yls+ '%'' order by z_ptzybh asc';
  end
  else
          if zl.Text='遗址遗迹' then
  begin

        get_Q:=TADOQuery.Create(self);
        get_Q.Connection:=dm.conn;
        c:=yl.text;
        get_Q.SQL.Text := 'select z_dmbm from t_dmb where t_dmb.z_dmmc=g and t_dmb.z_dmlxbm=9';
        get_q.Parameters.ParamByName('g').Value:=c;
        get_Q.open;
        yls:=trim(get_Q.FieldValues['z_dmbm']);
        get_Q.Close;
        sql := sql+'and Z_yl like ''%' +yls+ '%''order by z_ptzybh asc ';
        end
         else
          if zl.Text='人文活动' then
  begin
        get_Q:=TADOQuery.Create(self);
        get_Q.Connection:=dm.conn;
        c:=yl.text;
        get_Q.SQL.Text := 'select z_dmbm from t_dmb where t_dmb.z_dmmc=g and t_dmb.z_dmlxbm=10';
        get_q.Parameters.ParamByName('g').Value:=c;
        get_Q.open;
        yls:=trim(get_Q.FieldValues['z_dmbm']);
        get_Q.Close;
        sql := sql+'and Z_yl like ''%' +yls+ '%''order by z_ptzybh asc ';
  end ;

         // sql := sql+'and Z_yl like ''%' +yls+ '%'' ';
              {  begin
                 get_Q:=TADOQuery.Create(self);
                 get_Q.Connection:=dm.conn;
                 get_Q.SQL.add('select * from t_dmb where z_dmmc="'+zl.Text+'" and t_dmb.z_dmlxbm=3 ');
                 get_Q.open;
                 dqc:=trim(get_Q.FieldValues['z_dmbm']);
                 get_Q.Close;
          end;
             if dqc=1 then     }


           dm.lyxx.Close;
           dm.lyxx.SQL.Clear;
           dm.lyxx.SQL.Add(sql);
           dm.lyxx.Open;
           if not dm.lyxx.Eof then
            begin
             lyzylrfrm.GetAll;
             lyzylrfrm.Bitbtn2.Click; //鼠标双击的时候,进入该条记录的编辑状态
             lyfrm.Close;
           end
           else
             begin
              dm.lyxx.Close;
              dm.lyxx.SQL.Clear;
              dm.lyxx.SQL.Add('select * from  T_geo_tour where 1>0');
              dm.lyxx.Active :=true;
              MessageBox(self.Handle, '无此地区信息!', '提示', mb_IconInformation + mb_Ok);
            end;
           end;
    end;



end;


end.

⌨️ 快捷键说明

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