我需要一种方法来刷新一个表单,以便它在构造函数中执行所有代码,我已经尝试过Form.Refresh(),this.Invalidate()甚至是Form.Reload()..仍然不会像第一次启动应用程序时那样运行,是否有一种简单的方法去做这个?
我有一个像这样简单的for循环
let mutable index = 0
let mutable indx = 0
for c in list do
//some code
index <- indx
indx <- indx + 1
Run Code Online (Sandbox Code Playgroud)
基本上我想要做的是迭代对象列表并在列表中搜索特定对象,然后将索引变量设置为我正在寻找的对象的索引.
我假设它与最后一行有关,我认为我将indx递增1,但它似乎不起作用.
我正在尝试为使用指针数组来存储对象的数组类创建一个remove函数.
所以我得到的是一个指向对象的指针列表:
objname* list = new objname[100];
Run Code Online (Sandbox Code Playgroud)
注意,它被声明为类的成员,我们称之为myClass.
我想要的是为myClass创建一个函数,它将索引作为参数,并从该索引的列表中删除该对象.这就是我所拥有的以及我想做的事情.
void myClass::remove(int index)
{
objname* temp = new objname[listlen]; //creating a temporary list to copy values from the "main" list.
//want to copy elements from 0 to index in "this->list" and store inside temp, then skip one element and copy the rest.
}
Run Code Online (Sandbox Code Playgroud)
可能有更好的方法来获得此功能,如果是这样,我愿意接受建议.
如何在 F# 中覆盖 MouseMove(或任何与此相关的鼠标事件),类似于在 C# 中的实现方式?意思是我想写这样的东西,只是为了获取当前的鼠标坐标。
override form.MouseMove e =
mouseX = e.X
mouseY = e.Y
Run Code Online (Sandbox Code Playgroud)
编辑:基本上我想访问 MouseEventArgs,在这段代码中,参数 e 被解释为 PaintEventArgs。
第二次编辑:这段代码实际上有效,只是有另一个代码块覆盖了 OnPaint 事件,所以显然我不能对 F# 中的两个覆盖使用相同的事件参数变量 (e)。