Vb6 当数据更改时,刷新组合框的首选方法是什么?

Vb6 当数据更改时,刷新组合框的首选方法是什么?,vb6,combobox,refresh,Vb6,Combobox,Refresh,当数据更改时,刷新组合框的首选方法是什么 如果表单已打开且组合框数据已加载,如何在不关闭和重新加载表单的情况下刷新组合框的内容 您是否必须对组合框上的单击事件执行某些操作?如果每次有人单击组合框时数据库都会被点击,那么这似乎是应用程序的潜在速度减慢。您必须确定: 1)您的数据何时更改? 如果它取决于其他用户的活动,因此在不查询数据库的情况下无法确定是否已更改,则可以确定刷新的最佳时间,如加载表单或每次单击,或者可以使用计时器控件在特定时间刷新数据 2)您的用户何时需要知道该更改? 尝试了解用户了

当数据更改时,刷新组合框的首选方法是什么

如果表单已打开且组合框数据已加载,如何在不关闭和重新加载表单的情况下刷新组合框的内容

您是否必须对组合框上的单击事件执行某些操作?如果每次有人单击组合框时数据库都会被点击,那么这似乎是应用程序的潜在速度减慢。

您必须确定:

1)您的数据何时更改?

如果它取决于其他用户的活动,因此在不查询数据库的情况下无法确定是否已更改,则可以确定刷新的最佳时间,如加载表单或每次单击,或者可以使用计时器控件在特定时间刷新数据

2)您的用户何时需要知道该更改?

尝试了解用户了解更改的紧迫性。和他们谈谈。根据这一点,决定何时需要刷新数据

最后:

没有一种正确的方法可以做到这一点。这取决于软件结构、用户需求和特定情况

希望能有帮助。祝你好运

更新:

我可以添加我最近使用的解决方案。如果有什么不清楚的,就问吧

我假设您正在从MS SQL Server刷新组合

如果是,

1。创建一个表,在其中存储Combo的数据更改日期或版本

2.onClick事件或使用计时器控件,该控件将每5分钟(或任何其他时间)检查一次更改,您可以将组合的上次更改日期(或版本)与上次更改(或版本)进行比较。在该表中,我们存储上次日期(或版本),并且仅当日期(或版本)更改时,才刷新组合

3.上次日期(或版本)您可以存储在变量或文本框控件中,每次刷新组合时更改其值

4.如果数据发生更改,则更新该表中的最后日期(或版本)

在这种情况下,您只需要检查更改,而不是更新它们

p.S.如果此解决方案无法满足您的需要,只需在每次单击事件时刷新即可。没有比这更好的事件了。

您必须确定:

1)您的数据何时更改?

如果它取决于其他用户的活动,因此在不查询数据库的情况下无法确定是否已更改,则可以确定刷新的最佳时间,如加载表单或每次单击,或者可以使用计时器控件在特定时间刷新数据

2)您的用户何时需要知道该更改?

尝试了解用户了解更改的紧迫性。和他们谈谈。根据这一点,决定何时需要刷新数据

最后:

没有一种正确的方法可以做到这一点。这取决于软件结构、用户需求和特定情况

希望能有帮助。祝你好运

更新:

我可以添加我最近使用的解决方案。如果有什么不清楚的,就问吧

我假设您正在从MS SQL Server刷新组合

如果是,

1。创建一个表,在其中存储Combo的数据更改日期或版本

2.onClick事件或使用计时器控件,该控件将每5分钟(或任何其他时间)检查一次更改,您可以将组合的上次更改日期(或版本)与上次更改(或版本)进行比较。在该表中,我们存储上次日期(或版本),并且仅当日期(或版本)更改时,才刷新组合

3.上次日期(或版本)您可以存储在变量或文本框控件中,每次刷新组合时更改其值

4.如果数据发生更改,则更新该表中的最后日期(或版本)

在这种情况下,您只需要检查更改,而不是更新它们


p.S.如果此解决方案无法满足您的需要,只需在每次单击事件时刷新即可。对于这种情况,没有更好的事件。

取决于有多少人将使用表单,但在正常情况下,使用选择框的onclick事件是可以的。
使用ajax调用很好,因为这意味着您不必加载整个页面。

取决于有多少人将使用表单,但在正常情况下,使用选择框的onclick事件是可以的。
使用ajax调用很好,因为它意味着您不必加载整个页面。

有一点很清楚,您使用的下拉菜单意味着您不需要在下拉菜单中加载更多的项目。我认为大约20或30个。 那么,数据库调用中的问题是什么? 创建将使用执行计划并提供快速结果的过程。 或者将需要加载的表放入缓存,并在特定时间填充缓存 如果数据发生更改,则在下拉列表中加载数据。 我在窗口应用程序中工作,我面临着同样的问题,但没有更好的选择
然后调用数据库或将其放入缓存。

有一点很清楚,您使用的下拉菜单意味着不需要在下拉菜单中加载更多的项目。我认为大约20或30项。 那么,数据库调用中的问题是什么? 创建将使用执行计划并提供快速结果的过程。 或者将需要加载的表放入缓存,并在特定时间填充缓存 如果数据发生更改,则在下拉列表中加载数据。 我在窗口应用程序中工作,我面临着同样的问题,但没有更好的选择
然后调用数据库或将其放入缓存。

我可以看到两种方法:

  • 在UI中放置一个“刷新”按钮,仅当用户单击该按钮时才重新加载数据。用户应该清楚(描述性标签,me