小编ale*_*oot的帖子

Object Disposed异常和多线程应用程序

我有一个启动System.Threading.Timer的应用程序,然后这个计时器每5秒从链接数据库读取一些信息并在主要应用程序形式上更新GUI;

由于System.Threading.Timer为Tick事件创建另一个线程,我需要使用Object.Invoke在主应用程序表单上更新用户界面,代码如下:

this.Invoke((MethodInvoker)delegate()
  {
       label1.Text = "Example";
  });
Run Code Online (Sandbox Code Playgroud)

该应用程序工作得很好,但有时当用户关闭主窗体然后关闭应用程序时,如果timer_tick事件上的第二个线程正在更新主线程上的用户界面,则用户将获得ObjectDisposedException.

如何在关闭主窗体之前停止并关闭线程计时器,然后避免对象处置异常?

c# multithreading timer

5
推荐指数
2
解决办法
6209
查看次数

在 WinForm 上完全禁用鼠标滚轮

我必须完全禁用 Windows 窗体和其中包含的每个控件上的鼠标滚轮,我已经尝试使用事件鼠标滚轮,但它无法正常工作:

    this.MouseWheel += new MouseEventHandler(Form_MouseWheel);

    private void Form_MouseWheel(object sender, MouseEventArgs e) {
        ((HandledMouseEventArgs)e).Handled = true;
    }
Run Code Online (Sandbox Code Playgroud)

如何在 Windows 窗体及其内部的每个控件中完全禁用鼠标滚轮?

c# events mouseevent

5
推荐指数
0
解决办法
3282
查看次数

仅当Character是FireBird 2.5上的数字时才转换为Int

我有一个查询,我在MySQL数据库上使用,在可能的情况下(当char字符串是数字时)将char数据库字段转换为整数,所以例如ORDER BY我在mysql上使用的子句是:

ORDER BY
   CASE 
   WHEN CONVERT(charfield, SIGNED INTEGER) IS NOT NULL THEN
        CAST(charfield AS SIGNED INTEGER)  
   ELSE 9999999999 END
Run Code Online (Sandbox Code Playgroud)

其中charfield是数据库字段字符(25).

如何ORDER BY为Firebird 2.5 翻译此Query子句?

firebird sql-order-by firebird2.5

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

在Java.util.Date中解析org.mozilla.javascript.NativeDate

我正在尝试解析从使用rhino库评估的JavaScript脚本到java.util.Date的日期,我可以将org.mozilla.javascript.NativeDate转换为java.util.Date吗?

如果使用Context.tostring方法将NativeDate转换为字符串,我将获得以下格式的日期:

Wed Oct 12 2011 16:17:59 GMT+0200 (CEST)
Run Code Online (Sandbox Code Playgroud)

如何将此字符串日期表示解析为java.util.Date对象?

javascript java date

5
推荐指数
2
解决办法
5271
查看次数

关于Java和C#中访问说明符的困惑

我在比较Java和C#中的访问修饰符.我想protected internal在Java中找到C#的替代品.但我注意到protected两种语言(C#Java)的修饰符都不同.protected在Java中相当于protected internalC#,因为成员也可以在同一个包中访问.

我有两个问题

  • 为什么他们在Java和C#中为同一个修饰符创建了不同的含义?
  • 如何在Java protected中使用C#(Access仅限于包含类或从包含类派生的类型.)?

c# java keyword access-specifier

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

正则表达式中字母"〜"的含义

正则表达式中"〜"的含义是什么.例如在此代码中

preg_match("~^(\(\d+\)|\d+\-)?\d{10,20}$~",$value)
Run Code Online (Sandbox Code Playgroud)

此代码检查电话号码是否包含扩展名.我试图删除此代码中的"〜"并得到如下错误:

警告:preg_match()[function.preg-match]:在第21行的C:\ xampp\htdocs\test\my_application\Phone.php中找不到结束分隔符'^'

php regex

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

Firebird 和 Table,字段名称小写

我已经将一个数据库从 MySQL 转换为 Firebird,所有表名和字段名都是小写的,当我查询数据库时,它给我一个找不到表的错误,因为 Firebird 自动将查询中的表名转换为大写字母,但我在数据库中的表名是小写的。

要查询数据库,我需要将表名或字段名用双引号括起来,例如:

SELECT "field1","field2" FROM "table"
Run Code Online (Sandbox Code Playgroud)

Firebird 中是否有设置允许使用小写字母的表/字段名称查询数据库而不引用它?

firebird

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

Eclipse jar导出和lib文件夹

我有一个使用一些外部jar库的java项目,当我用eclipse导出我的项目时(File-Export-Runnable Jar文件),我选择"将外部库复制到主jar旁边的子文件夹中"和eclipse的选项自动为我创建一个名为的文件夹:

myjarname_lib
Run Code Online (Sandbox Code Playgroud)

我想将库导出到名为lib的文件夹中,是否可能?我试图在lib中重命名该文件夹但不起作用,因为可执行jar不识别该文件夹中的库.如何更改外部库的名称?

java eclipse

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

在实际写入文本行之前,如何延迟创建文本文件?(懒惰创作)

我有一个perl脚本,在文件上附加文本:

open (EXFILE, ">>$outFile");
Run Code Online (Sandbox Code Playgroud)

在打开时创建一个空文件,我想避免这种情况.我希望只有在第一次将一行写入文件句柄时才会创建该文件:

print EXFILE $line 
Run Code Online (Sandbox Code Playgroud)

如果没有任何内容写入文件句柄,则不应创建该文件...

可能吗 ?怎么样 ?

perl file

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

4
推荐指数
2
解决办法
348
查看次数