小编Rob*_*edy的帖子

TTimer.OnTimer事件处理程序是否可重入?

我的应用程序中有一个TTimer,每2秒触发一次,并调用我的事件处理程序HandleTimerEvent().HandleTimerEvent()函数修改共享资源,在返回之前可能需要10秒的时间才能执行.此外,我在事件处理程序中调用Sleep()有时放弃处理器.

我不确定C++构建器的TTimer对象在调用事件时是如何工作的,所以我刚才解释的场景让我思考,尤其是在先前的调用返回之前是否调用了HandleTimerEvent().

问题归结为几件事.

TTimer对象是否对事件进行排队?

在先前的调用返回之前,TTimer对象是否可以调用我的事件处理程序?

delphi c++builder

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

如何从解码的JSON对象中删除"u"?

我在Python中有一本字典词典:

d = {"a11y_firesafety.html":{"lang:hi": {"div1": "http://a11y.in/a11y/idea/a11y_firesafety.html:hi"}, "lang:kn": {"div1": "http://a11y.in/a11ypi/idea/a11y_firesafety.html:kn}}}
Run Code Online (Sandbox Code Playgroud)

我在JSON文件中有这个,我用它编码json.dumps().现在,当我使用json.loads()Python 解码它时,我得到一个这样的结果:

temp = {u'a11y_firesafety.html': {u'lang:hi': {u'div1': u'http://a11y.in/a11ypi/idea/a11y_firesafety.html:hi'}, u'lang:kn': {u'div1': u'http://a11y.in/a11ypi/idea/a11y_firesafety.html:kn'}}}
Run Code Online (Sandbox Code Playgroud)

我的问题在于"u",它表示我的temp(字典词典)中每个项目前面的Unicode编码.如何摆脱那个"你"?

python

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

如何将包含可变大小数组的结构封送到C#?

我如何编组这个C++类型?

ABS_DATA结构用于将任意长的数据块与长度信息相关联.声明的Data数组长度为1,但实际长度由Length成员给出.

typedef struct abs_data {
  ABS_DWORD Length;
  ABS_BYTE Data[ABS_VARLEN];
} ABS_DATA;
Run Code Online (Sandbox Code Playgroud)

我尝试了以下代码,但它不起作用.数据变量总是空的,我确信它有数据.

[System.Runtime.InteropServices.StructLayoutAttribute(System.Runtime.InteropServices.LayoutKind.Sequential, CharSet = System.Runtime.InteropServices.CharSet.Ansi)]
    public struct abs_data
    {
        /// ABS_DWORD->unsigned int
        public uint Length;

        /// ABS_BYTE[1]
       [System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.ByValTStr, SizeConst = 1)]
        public string Data;
    }
Run Code Online (Sandbox Code Playgroud)

.net c# c++ marshalling

18
推荐指数
3
解决办法
2万
查看次数

如何将ISO 8601字符串转换为Delphi TDate?

我可以使用以下方法轻松地将Delphi TDate转换为ISO 8601格式:

DateTimeToString(result, 'yyyy-mm-dd', myDate);
Run Code Online (Sandbox Code Playgroud)

进行逆转换的惯用方法是什么?StringToDateTime()似乎不存在.

显然,我可以通过手动解析字符串并对结果进行编码来实现"硬"方式,但这似乎是一个糟糕的选择.

delphi iso8601

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

如何通过RTTI区分TDateTime属性和Double属性?

使用Delphi 2010中的RTTI系统,有没有办法找出属性是否是TDateTime?每当我回调asVariant并且如果我检查属性类型时,它当前将它视为双精度.这是因为它只能看到基本类型吗?(TDateTime = double)

delphi rtti tdatetime

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

德尔福切割玻璃

我正在使用Delphi XE2,我喜欢玻璃效果,我想在Windows 7平板电脑工具中"切割"玻璃.如果你也知道如何切一个按钮,如果你告诉我如何,我会很高兴.

在此输入图像描述

谢谢

delphi aero-glass

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

Python的unittest模块如何检测测试用例?

我想知道我们何时运行unittest.main(),Python如何知道子类unittest.Testcase有哪些?

例如,如果我添加一个类FromRomanBadInput(unittest.TestCase),怎么unittest知道运行它?

python unit-testing

18
推荐指数
2
解决办法
6306
查看次数

如何使用DUnit测试私有方法?

我有一个班级,我正在与DUnit进行单元测试.它有一些方法,一些公共方法和私有方法.

type
  TAuth = class(TDataModule)
  private
    procedure PrivateMethod;
  public
    procedure PublicMethod;
  end;
Run Code Online (Sandbox Code Playgroud)

为了为这个类编写单元测试,我必须公开所有的方法.

是否有一种不同的方式来声明私有方法,以便我仍然可以测试它们,但它们不公开?

delphi unit-testing dunit

17
推荐指数
3
解决办法
3973
查看次数

函数返回后,指向字符串文字的指针是否仍然有效?

以下函数返回的指针是否有效?

const char * bool2str( bool flg )
{
    return flg ? "Yes" : "No";
}
Run Code Online (Sandbox Code Playgroud)

它在Visual C++和g ++中运行良好.C++标准对此有何看法?

c++ standards pointers

17
推荐指数
4
解决办法
3895
查看次数

如何检查数组中是否存在字符串?

我有这个代码:

var
  ExtString: string;
const
  Extensions : array[0..4] of string = ('.rar', '.zip', '.doc', '.jpg', '.gif');

if ExtString in Extensions then
Run Code Online (Sandbox Code Playgroud)

在最后一行,我收到一个错误:

[DCC错误] E2015运算符('then')不适用于此操作数类型

我想我不能这样做,所以我怎样才能正确执行我的任务呢?

arrays delphi string

17
推荐指数
3
解决办法
3万
查看次数