标签: delphi-7

从IDE中隐藏Delphi 7 COM命令,如Visual Studio?

我们公司有一大堆软件,它有很多非常有用的COM命令.我们有一个很好的基本设置,允许你基本上绕过GUI并获得你想要的信息,但我们也有一些已经为特定客户添加.

理想情况下,当我们的.exe被导入Visual Studio这样的东西时,我们想要将这些特定的COM命令"隐藏"给普通用户.因此,尽管他们是活跃的,但从理论上讲,唯一可以使用它们的人就是明确告诉他们的人.这将消除我们与客户使用的功能相关的许多问题,而这些功能并非真正设计为由他们使用,当然这意味着不必支持多个安装程序.

delphi com delphi-7

0
推荐指数
1
解决办法
161
查看次数

有没有办法摆脱TCurrencyEdit控件中的$字符?

我正在使用Delphi 7并尝试创建一个可以输入小数的编辑框.

除了TCurrencyEdit之外,Delphi 7基本库中似乎没有任何内容.但是,它$在价值的开头处着手.反正有没有摆脱这个"功能"?

delphi controls decimal delphi-7

0
推荐指数
1
解决办法
239
查看次数

Delphi 7具有变量参数的过程

有一个看起来像的程序

Procedure TestProc(TVar1, TVar2 : variant);
Begin
  TVar1 := CreateOleObject('Excel.Application');
  TVar1.Workbooks.open('C:\Test\Test.xls');
  TVar1.Workbooks[1].Worksheets[1].Name := 'Sheet_1';
  TVar2 := TVar1.Workbooks[1].Worksheets['Sheet_1'];
End;
Run Code Online (Sandbox Code Playgroud)

注意:TVar1和TVar2是全局变量

在按钮的onclick事件中调用该过程然后使用创建的对象不起作用

难道delphi不允许创建具有变量参数的过程吗?

delphi delphi-7

0
推荐指数
1
解决办法
930
查看次数

删除OnDraw中的列表框项?

我有一个列表框并向其添加项目,项目是文件的地址,项目是在一些进程后添加的,它们是这样插入的:

Listbox_Browser.Items := myItems;
Run Code Online (Sandbox Code Playgroud)

因此,我不是逐个添加它们我在插入ti列表框时无法检查它们,我试图在OnDraw中检查它们并使用如下代码:

  Try
    FileOpenandP(Listbox_Browser.Items[Index]);
  Except
    ListBox_Browser.Items.Delete(Index);
  End;
Run Code Online (Sandbox Code Playgroud)

但我得到错误"列表索引超出界限",解决方案是什么?

delphi delphi-7

0
推荐指数
1
解决办法
519
查看次数

如何将TShellListView项过滤到特定的文件扩展名?

我正在开发一个需要ShellListView1的Delphi 7项目,所以只显示.PNG或.JPG文件.

如何仅查看文件夹和特定文件类型(例如:'.exe; .bat')?

我被告知是一个带有屏蔽的ShellListView1组件,但我尝试的网站是离线的.

delphi delphi-7

0
推荐指数
1
解决办法
1582
查看次数

使用Delphi从网站获取JSON数据

有这个网站http://www.ingress.com/intel

要访问该网站,我们必须使用用户名和密码登录.

访问后,该站点使用JSON作为其数据.

我是JSON的新手.

任何人都可以举例说明如何使用Delphi从网站获取JSON数据?

我顺便使用Delphi 7.

谢谢.

delphi json http delphi-7 http-authentication

0
推荐指数
1
解决办法
2万
查看次数

delphi类中的访问冲突

我有一个这样的课:

Component = class(TObject)  
  Name: string;               
  CurState: word;             
  States: array of state;   
  constructor Create(nm: string);
  procedure AddState(ccl: bool; const InB: BufArr; const OutB: BufArr);
  function GetStateCount(): Integer;
  end;
Run Code Online (Sandbox Code Playgroud)

States是一个数组state,也是一个类声明.

 State = class(TObject)    
  InBuf: BufArr;            
  OutBuf: BufArr;           
  Cycle: bool;       
  constructor Create(ccl: bool; const InB: BufArr; const OutB: BufArr);
  end;
Run Code Online (Sandbox Code Playgroud)

每个都component可以容纳多个state,这就是为什么我有一个数组state.

GetStateCount()函数应返回组件所具有的状态数.实现如下:

function Component.GetStateCount(): Integer;
begin
  result:=Length(States);
end;
Run Code Online (Sandbox Code Playgroud)

但是,当我在另一个过程中调用此函数时,我收到以下错误:

在此输入图像描述

我似乎无法弄清楚这个原因.将不胜感激任何帮助.

好的,这是我调用函数的代码的一部分:

for i:=0 to nc-1 do
begin
cycle:=false;
len:=cmp[i].GetStateCount;
for j:=0 …
Run Code Online (Sandbox Code Playgroud)

delphi class delphi-7 access-violation

0
推荐指数
1
解决办法
1149
查看次数

FindComponent找不到在运行时创建的组件

我使用Delphi 7和许多第三方组件.我的主存根应用程序加载了许多DLL,这些DLL是各种模块,如债权人,债务人,采购订单等.

我有一个问题FindComponent().99%的时间,它的工作方式应该如何.但不适用于下面的代码.

我正在尝试创建表单报告,在表格中保留报告选择条件的所有详细信息,然后即时创建条件.理论上,它应该完美地工作,但由于某些原因,在创建组件后,FindComponent()找不到它们.

try
  for i := gbSelectionCriteria.ComponentCount - 1 downto 0 do begin
    ShowMessage(gbSelectionCriteria.Components[i].Name);
    gbSelectionCriteria.Components[i].Free;
  end;

  // The above loop to remove the components from the groupbox works fine

  // Creating the components works

  fSysData.tbSelectionCriteria.First;
  while not fSysData.tbSelectionCriteria.EOF do begin
    case fSysData.tbSelectionCriteriaComponentType.AsInteger of
      1 : begin  // TMyAdvEdit
        with TMyAdvEdit.Create(gbSelectionCriteria) do begin
          Visible := False;
          Parent := gbSelectionCriteria;
          Name := fSysData.tbSelectionCriteriaName.AsString;
          Left := fSysData.tbSelectionCriteriaLeft.AsInteger;
          Top := fSysData.tbSelectionCriteriaTop.AsInteger;
          Width := fSysData.tbSelectionCriteriaWidth.AsInteger;
          LabelCaption := fSysData.tbSelectionCriteriaCaption.AsString;
          LabelPosition …
Run Code Online (Sandbox Code Playgroud)

delphi delphi-7

0
推荐指数
1
解决办法
2129
查看次数

试图在Delphi 7中使用多个标识符接收错误

    uses
      Math;
      SysUtils;
Run Code Online (Sandbox Code Playgroud)

但我收到错误:

声明预期但标识符"SysUtils"已找到

任何想法有什么不对?

delphi-7

0
推荐指数
1
解决办法
38
查看次数

德尔福.程序正在编译.但形式没有任何反应

编译正在运行,一切正常.但形式没有任何反应.
表单已启动,但不会自动添加任何数据.如果您手动输入数据,那么当您按下按钮时,也没有任何反应

有必要显示函数Y(x)的值及其在S(x)系列中的扩展,x从x0到xk变化,步长为h =(x0-xk)/ 10.在x的整个范围内的S(x)和Y(x)的值表示计算S(x)和Y(x)的正确性.

unit Unit1;

interface

uses 
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,ExtCtrls ;

type
TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Label3: TLabel;
    Label4: TLabel;
    Edit3: TEdit;
    Edit4: TEdit;
    Memo1: TMemo;
    Button1: TButton;
    procedure Form1Create(Sender:TObject);
    procedure Button1Click(Sender:TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
{$R *.dfm}

procedure TForm1.Form1Create(Sender: TObject);
begin
  Edit1.Text := '0';
  Edit2.Text := '2';
  Edit3.Text := '5';
  Edit4.Text := …
Run Code Online (Sandbox Code Playgroud)

forms delphi delphi-7

0
推荐指数
1
解决办法
135
查看次数