小编Mic*_*Sim的帖子

默认复选框状态:已选中还是未选中?

我有一个带有一堆复选框的应用程序设置页面.我该如何选择复选框的默认选中状态?

我看到以下选项:

  1. 始终将默认状态设置为未选中,但这会导致复选框文本中的否定语句(如"不自动显示到期日程"),这有时很难理解.

  2. 始终将复选框文本设置为具有正面含义(例如"自动显示到期日程表"),但这会导致默认复选框状态不一致,包括已选中和未选中状态.

  3. ......还有其他选择吗?

有关此问题的任何指导方针,最佳做法和建议吗?

user-interface design-patterns

7
推荐指数
3
解决办法
1498
查看次数

为什么必须始终从UI线程创建/更新UI元素?

为什么必须始终从UI线程创建/更新UI元素?

在(几乎?)所有编程语言中,UI元素只能从UI线程安全地访问/修改.我知道这是一个标准的并发访问和同步问题,但它真的有必要吗?这种行为是由编程语言还是操作系统强加的?有没有这种情况不同的编程语言?

language-agnostic user-interface multithreading operating-system

7
推荐指数
3
解决办法
477
查看次数

哪些本地计算机组件可能会影响RDP会话性能?

我有以下完全可重现的场景,我无法理解:

有一个非常简单的应用程序,除了调用之外什么也没做CreateObject("Word.Application"),就是为COM互操作创建一个MS Word实例.此应用程序位于Windows终端服务器上.测试用例是通过RDP连接,执行应用程序,应用程序将输出CreateObject呼叫所需的时间.

现在的问题是,如果我从特定笔记本(HP Spectre)连接,执行时间会明显更长:它需要1,7s (+/- 0.1s).

如果我从任何其他机器(笔记本电脑或台式电脑)连接,则执行时间介于两者之间0,2-0,4s.

执行时间不依赖于使用的RDP帐户,屏幕分辨率或本地打印机.我甚至在HP笔记本上安装了全新的Windows以排除任何其他副作用.HP笔记本电脑是通过WLAN还是USB网卡连接无关紧要.我4x无法理解与8x任何其他机器的执行时间差异.

哪个原因(组件/设置)可以解释执行时间的这个巨大差异?

一些额外的信息:我尝试使用API​​监视器调试该过程,并且可以看到> 90%的执行时间实际上是在调用RpcSend和RpcReceive之间花费的.不幸的是我无法理解这些信息.

windows rpc interop rdp terminal-services

6
推荐指数
1
解决办法
109
查看次数

对象级事务管理模式

我正在尝试找出在对象级别(而不是数据库级别)处理事务的最佳方法.简短示例:4个对象A,B,C和D. A启动事务并调用B和C中的方法.在此事务中C也调用D.被调用的方法不应该总是参与此事务,而是也可以自己打电话.是否有任何模式来管理对象级别的事务?

我没有找到任何东西,所以我提出了这个:使用TransactionContext,其中可以注册TransactionListeners.如果使用TransactionContext启动事务,则它会将正在运行的事务注入每个已注册的侦听器,而这些侦听器将使用正在运行的事务,否则将根据需要自行启动一个事务.通过这种方式,我可以自由决定是否需要参与我的交易的对象.

当拥有如上所述的对象调用链时会出现问题.在启动事务时,我只知道B和C必须参与事务,因此我将它们添加到TransactionContext中.但D怎么样?我真的不想将TransactionContext传递给B和C.

我会很感激我的方法的一些输入以及对已证实的模式的一些指示(甚至更好).

architecture design-patterns transactions

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

我是否应该始终将Java中的实例变量保持初始化?

我最近开始了一个新项目,并且我试图将我的实例变量始终初始化为某个值,因此它们都不会在任何时候为null.以下小例子:

public class ItemManager {

  ItemMaster itemMaster;
  List<ItemComponentManager> components;

  ItemManager() {
    itemMaster = new ItemMaster();
    components = new ArrayList<ItemComponentManager>();
  }

  ...
}
Run Code Online (Sandbox Code Playgroud)

重点是在代码中的某个地方使用实例变量之前避免繁琐的null检查.到目前为止,它工作正常,你大多不需要null值,因为你也可以检查空字符串或空列表等.我没有使用这种方法的方法范围变量,因为它们的范围非常有限,所以不会影响代码的其他部分.

这一切都是实验性的,所以我想知道这种方法是否有效,或者是否有一些我还没有看到的陷阱.保持实例变量初始化通常是一个好主意吗?

java variables initialization

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

如何在多个subversion存储库中搜索文件内容?

我有多个不同项目的SVN存储库,我想搜索相同的搜索项/正则表达式,但不检查或更新每个项目并手动对每个项目进行搜索.

我想知道是否可以在多个SVN存储库中搜索某些搜索词(或正则表达式)中的文件内容.

regex svn version-control search

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

哈希表的初始化与条目计数有多大?

与条目计数相关的哈希表是否有最佳大小?

因此对于entries = n是否有最优(或推荐)s的哈希表大小取决于n?让我们说2n(条目计数加倍)或其他一些值?

是否取决于内部结构(散列函数,桶大小等)?在提出要求时请提供一些证据.

algorithm hashtable data-structures

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

日期范围在带有ms访问数据库的vb中不起作用

我需要更新其中pdate(日期字段)不在当前月份和年份的第1天和第20天之间的行.

我正在使用下面编写的代码,但它给出了一个错误,说"预期参数太少"1.我使用MS Access 2007作为数据库.

cn.Execute "update water set prel = (prel + (mmt * (tx / 100))) where pdate not between 1-" & Format$(Now, "MMM") & "-" & Format$(Now, "YYYY") & "  and 20-" & Format$(Now, "MMM") & "-" & Format$(Now, "YYYY") & " "
Run Code Online (Sandbox Code Playgroud)

sql vb6 ms-access

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

Java:Pattern,Scanner示例不起作用

我很好奇为什么这种模式不起作用.

String same = "==== Instructions ====";
Pattern title4 = Pattern.compile(same);
Scanner scan = new Scanner(same);
System.out.println(scan.hasNext(same));
Run Code Online (Sandbox Code Playgroud)

收益:

false
Run Code Online (Sandbox Code Playgroud)

java regex string

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

将字符串映射到保持字典顺序的数字

我正在寻找能够将字符串映射到数字的算法或函数,使得结果值对应于字符串的字典顺序.例:

"book" -> 50000
"car"  -> 60000
"card" -> 65000
"a longer string" -> 15000
"another long string" -> 15500
"awesome" -> 16000
Run Code Online (Sandbox Code Playgroud)

作为函数,它应该类似于:f(x)= y,因此对于任何x1 <x2 => f(x1)<f(x2),其中x是任意字符串,y是数字.

如果x的输入集是有限的,那么我总是可以进行排序并分配正确的值,但我正在为x的无限输入集寻找通用的东西.

sorting string mapping algorithm function

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