小编Hyp*_*peZ的帖子

向对象添加元素

我需要填充一个json文件,现在我有这样的东西:

{"element":{"id":10,"quantity":1}}
Run Code Online (Sandbox Code Playgroud)

我需要添加另一个"元素".我的第一步是将json放在Object类型中cart = JSON.parse,现在我需要添加新元素.我想我必须使用cart.push添加另一个元素,我试过这个:

var element = {};
element.push({ id: id, quantity: quantity });
cart.push(element);
Run Code Online (Sandbox Code Playgroud)

但是当我尝试做的时候我得到错误"对象没有方法推送" element.push,我认为我做了一些非常错误的事情,因为我没有在任何地方告诉"元素".

我怎样才能做到这一点?

编辑:对不起,我头脑中有很多困惑.

我认为在从数据中获取数据时我只能得到对象类型JSON.parse,但我首先得到了我在JSON中的内容.

放数组而不是对象解决了我的问题,我也在这里使用了很多建议,谢谢大家!

javascript object

200
推荐指数
9
解决办法
85万
查看次数

为特定应用程序禁用Windows 10游戏栏

在某些情况下,Windows 10的游戏栏会打开我的应用程序(使用Delphi,VCL制作).这不是游戏,我不直接使用DirectX或OpenGL,但它打开了.

具体来说,当我减少托盘我的应用程序并打开一个弹出窗口时,会出现游戏栏.

我发现有很多网站都有完全禁用Windows 10游戏栏的教程(像这样),但我想只为我的应用程序禁用,我不认为用户会很高兴我的应用程序默默禁用了Windows功能

这可能吗?我找不到任何关于它的文档

windows delphi vcl windows-10

7
推荐指数
1
解决办法
1135
查看次数

Async InputQuery不处理"取消"按钮

我正在使用TDialogServiceAsync.InputQuery()单个输入进行简单的调用.它只是忽略了Cancel按钮和窗口的X关闭按钮.

Ok按钮工作正常.

这是我的代码:

uses
  FMX.DialogService.Async;

procedure TForm1.Button1Click(Sender: TObject);
begin
  TDialogServiceAsync.InputQuery('Title',
   ['Insert value'], ['bla bla'],
  procedure(const AResult: TModalResult; const AValues: array of string)
  begin
    if Aresult = mrOk then
      ShowMessage('Ok!');

    if Aresult = mrCancel then
      ShowMessage('Cancel!'); // this is never called
  end);
end;
Run Code Online (Sandbox Code Playgroud)

如果我按下Cancel,则InputQuery窗口不会关闭,并且不会调用我的回调过程.

按下Cancel按钮后如何关闭InputQuery表单?

我正在使用RADStudio 10.1柏林.


编辑:

我做了几个测试:

  1. 在Windows 32位的取消按钮工作
  2. 在Windows 64位取消按钮工作
  3. 在iOS 64位取消按钮正常工作
  4. 在Android 32位取消按钮正常工作

delphi firemonkey delphi-10.1-berlin

5
推荐指数
1
解决办法
1115
查看次数

如何声明在运行时指定长度的数组?

我需要声明一个具有用户定义维度的数组.这个数组在一个非常大的程序中,更改为列表可能是一个很大的问题.

现在我的数组声明如下:

Buffer: array[0..myCostant * 2] of Byte;
Run Code Online (Sandbox Code Playgroud)

myCostant是,像它说,已定义的常量.现在我需要使用变量,得到这样的东西:

Buffer: array[0..myVar * 2] of Byte;
Run Code Online (Sandbox Code Playgroud)

但我不能在数组定义中使用变量.

如何在不改变其他东西的情况下解决这个问题?这个变量是上限的,所以我能用这个max size声明数组并用另一条指令减少它吗?

delphi

3
推荐指数
1
解决办法
232
查看次数