Delphi 10.2-无法解析单元名称“控件”和“对话框”

时间:2018-09-20 12:34:28

标签: class controls delphi-10.2-tokyo

我遇到一系列未声明的标识符类型错误。像:第1300行的未声明标识符'MessageDlg'。

我之所以这样,是因为Delphi无法识别“控件”和“对话框”类。

但是我在uses子句中声明了

    uses
    Windows, Messages, SysUtils, Variants, Classes, Controls, Dialogs,
    ADODB, DateUtils, DB, Math, SqlExpr;
    //Cannot resolve unit name 'Controls'
    //Cannot resolve unit name 'Dialogs'
    .
    .
    .
    Procedure Insert_Data_BD();
    var
      j: Integer;
      IDOffer: Integer;
      Hour: String;
      adocOpen: TADOConnection;
      adospSELECT, adospINPUTX, adospINPUTY,
      adospINPUTZ, adospINPUTW, adospOUTPUTR : 
      TADOStoredProc;
      adoQuery: TADOQuery;
      blnUpdate: Boolean;
      strTabela: ShortString;
   begin
      Try
        ShortDateFormat := 'dd/mm/yy'; //Undeclared Identifier 'ShortDateFormat'
        ShortTimeFormat := 'hh:mm:ss'; //Undeclared Identifier 'ShortTimeFormat'
        DateTimeToString(Hour, 't', Time);
        blnUpdate := False;
   .
   .
   .
       MessageDlg('Error', mtInformation, [mbOK], 0); 
       // Undeclared identifier 'MessageDlg' 
       // Undeclared identifier 'mtInformation'
       // Undeclared identifier 'mbOK'
   end;

有人知道会发生什么吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

我发现了正在发生的事情...

我需要用vcl声明控件和对话框。我不知道为什么,因为在其他项目中没有必要这样做。

uses
   Windows, Messages, SysUtils, Variants, Classes, vcl.Controls, vcl.Dialogs,
   ADODB, DateUtils, DB, Math, SqlExpr;

错误:未声明的标识符'ShortDateFormat'

 Procedure Insert_Data_BD();
var
  j: Integer;
  IDOffer: Integer;
  Hour: String;
  adocOpen: TADOConnection;
  adospSELECT, adospINPUTX, adospINPUTY,
  adospINPUTZ, adospINPUTW, adospOUTPUTR : 
  TADOStoredProc;
  adoQuery: TADOQuery;
  blnUpdate: Boolean;
  strTabela: ShortString;

  begin
      Try
      //ShortDateFormat := 'dd/mm/yy';     
      //ShortTimeFormat := 'hh:mm:ss';     
        FormatSettings.ShortDateFormat := 'dd/mm/yy';       
        FormatSettings.ShortTimeFormat := 'hh:mm:ss';       
        DateTimeToString(Hour, 't', Time);
        blnUpdate := False;

另请参见以下链接:http://delphiprogrammingdiary.blogspot.com/2015/12/e2003-undeclared-identifier.html?_sm_au_=iVVBsnZBF232BDHF

忍耐是一种伟大的美德! :)