是否可以在Windows窗体的左上角显示一个与标准16X16像素图标不同的图标?
看来Skype的图标比标准宽得多:

是否可以在Windows窗体应用程序中?
我经常使用C#的BackgroundWorker对象来启动线程并执行任务.在Delphi中完成同样事情的最简单方法是什么?
这是C#中的一些代码:
private void button1_Click(object sender, EventArgs e)
{
BackgroundWorker bg = new BackgroundWorker();
bg.DoWork += new DoWorkEventHandler(bg_DoWork);
bg.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bg_RunWorkerCompleted);
test_number++;
object[] arguments = { "test", test_number };
bg.RunWorkerAsync(arguments);
}
void bg_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
// done.
}
void bg_DoWork(object sender, DoWorkEventArgs e)
{
// do actual work here
}
Run Code Online (Sandbox Code Playgroud) 在C#中,控件的Changed事件(例如,numericupdown)会被触发,无论该值是由用户直接更改还是由于某些其他事件而以编程方式更改.
有没有办法确定事件是否是由于用户输入而发生的?例如,手动更改numericUpDown1的值并单击button1将显示"value changed".如果通过用户点击控件中的向上/向下箭头而不是因为单击button1而更改了"值已更改",该怎么办?
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
MessageBox.Show("value changed");
}
private void button1_Click_1(object sender, EventArgs e)
{
numericUpDown1.Value = 3;
}
Run Code Online (Sandbox Code Playgroud) 使用Delphi,我如何访问相当于.NET的System.Environment.SpecialFolder.LocalApplicationData变量(适用于任何版本的Windows)?我以为我可以做到:
dir := GetEnvironmentVariable('LOCALAPPDATA');
Run Code Online (Sandbox Code Playgroud)
这适用于Vista,但默认情况下XP至少在我的测试机上没有设置该环境变量.
Delphi中是否真的没有针对浮点数的TSpinEdit控件?看起来有第三方组件提供了可行的控件.
你如何为浮动实现TSpinEdit?我一直在创建自己的TEDit字段和位于它旁边的TSpinButton,但似乎应该有更好的方法.
我需要将表单上特定类型的每个控件切换为不同的类型,同时保持与每个控件关联的名称和代码.
例如,假设我需要将十几个或更多TEdit字段切换到TSpinEdits.如何以最小的努力在Delphi 2007中做到这一点?
CheckedListBox上的DataSource属性对Intellisense是隐藏的.为什么?您可以使用绑定属性使其工作,但我担心它是隐藏的原因,我不应该在CheckedListBox上数据绑定由于一些我不知道的重要原因.
在CheckedListBox上数据绑定好吗?
我有一个C#应用程序,它在关闭时保存其状态,然后在启动时读取保存的状态.保存的一个项目是主窗体的位置.通常情况下这很好 - 在我的代码中有一行这样的行将位置保存到文件中,然后在启动时读回:
streamWriter.WriteLine("location:" + this.Location.X + "," + this.Location.Y);
Run Code Online (Sandbox Code Playgroud)
通常,我的机器上的位置坐标看起来像这样,有多个显示器:
location:-1069,283
Run Code Online (Sandbox Code Playgroud)
偶尔我会看到像这样保存的坐标:
location:-32000,-32000
Run Code Online (Sandbox Code Playgroud)
然后,当用户重新启动应用程序时,表单离桌面很远,并且普通用户无法(轻松)检索到该表单.
如何以这种方式读取坐标并且是否有建议来防止这种情况?
我注意到一些查询突然间运行缓慢.在对它们运行EXPLAIN后,我意识到他们没有使用我创建的索引.
我使用SHOW INDEXES进一步查看,并意识到除了桌面上的主键之外所有都被禁用.我确定我没有手动禁用索引.
我使用ALTER TABLE表ENABLE KEYS再次手动启用索引,事情恢复正常.
他们将如何成为残疾人?在什么情况下索引会自动禁用?
我需要为一些金融交易创建一个蒙特卡罗模拟器。输入将是:
我查看了Math::Random::MT::Auto Perl 模块,但不确定如何制定模拟器的输入。
鉴于我正在使用的输入,任何人都可以提供一些入门建议吗?
c# ×4
delphi ×4
.net ×3
algorithm ×1
controls ×1
data-binding ×1
delphi-2007 ×1
icons ×1
indexing ×1
montecarlo ×1
mysql ×1
perl ×1
windows ×1
winforms ×1