JEDI 可视化组件库:JvAlarms 组件(几个问题)

JEDI Visual Component Library : JvAlarms component (a few questions)

我决定试用 JvAlarms 组件。所以我做了:

procedure TForm1.Button1Click(Sender_TObject);
begin
jvAlarms1.Add.Name :=Edit1.Text;
jvAlarms1.Add.Time := dxDateTimeWheelPicker1.DateTime;
label1.caption:=datetimetostr(dxDateTimeWheelPicker1.DateTime);
jvAlarms1.Active:=True;
end;

现在,奇怪的是,当我设置闹钟和 运行 应用程序时,我立即得到一个弹出窗口 window,其中包含我的闹钟消息。 这是设计使然吗? 在我关闭此消息后,应用程序稍后会触发我在 time.I 上设置的警报 我只是想知道这个即时弹出窗口 window 是默认设置还是您可以关闭它以及如何关闭它。如果你不能,是否可以修改它,这样你至少可以像 'you have set the alarm : alarm name, to fire : alarmtime'.

这样对用户说些什么

第二个问题是关于报警信息。 闹钟响起时如何获取闹钟消息名称?

我试过了:

ShowMessage('Alarm:'+ jvAlarms1.Name);

但是好像不行。 我可以用 :

ShowMessage('Alarm:'+jvAlarms1.Items[0].Name;

但是我不知道添加的告警的索引!?所以我不能用那个。 我可以通过任何方式检索我的代码添加的警报列表吗?

第三个问题关于报警存储。 您是从 *.ini 加载它们还是可以使用数据库? 我在任何地方都找不到这种用法的例子(在这里搜索结果变成“0”)所以如果 有人可以指出我正确的方向。

您添加了两个闹钟,因为您调用了 Add 两次。改为调用一次:

var
  Item: TJvAlarmItem;
.... 
Item := jvAlarms1.Add;
Item.Name :=Edit1.Text;
Item.Time := dxDateTimeWheelPicker1.DateTime;

当警报触发时,组件的 OnAlarm 事件接收到对触发的特定警报的引用。您可以从该参考资料中读取名称。

将警报存储在应用程序中的位置完全取决于您。