下面的代码是VBA for Excel.我正在使用Excel 2007附带的Visual Basic编辑器.
Dim counter As Integer
counter = 1
While counter < 20
counter = counter + 1
end while '<- the compiler is complaining about this statement
Run Code Online (Sandbox Code Playgroud)
代码无法编译.在代码之上我只有声明.根据MSDN, 这应该工作,但事实并非如此.发生了什么事?
我正在编写一个C程序,如果已经成为该语言的一部分,将从部分函数应用程序中受益.我需要提供一个带有固定签名的函数指针,但有时我需要调用已经编写的需要参数的函数.
我可以编写很多小函数,互相称为:
// example, not actual code
void (*atJoystickLeft)(void); // fixed signature
.. code ..
atJoystickLeft = &func1;
.. code ..
void func1(void) { func2(10, "a string"); } /
Run Code Online (Sandbox Code Playgroud)
我想改为:
atJoystickLeft = &func2(10, "a string");
Run Code Online (Sandbox Code Playgroud)
所以我可以处理函数func1,它只是为调用func2设置参数.
这将使代码至少减少20% - 30%.我的简单问题是:有人在C中模拟部分函数应用程序吗?(C99)
我有一个标签,我想对齐,以便能够对齐文本框.
Visual Studio 2010 Express中的Designer已为我生成此代码
this.lblAddData.AutoSize = true;
this.lblAddData.Location = new System.Drawing.Point(167, 452);
this.lblAddData.Name = "lblAddData";
this.lblAddData.Size = new System.Drawing.Size(25, 14);
this.lblAddData.TabIndex = 5;
this.lblAddData.Text = "text";
this.lblAddData.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
Run Code Online (Sandbox Code Playgroud)
[text] [textbox]在代码中我以编程方式更改文本
lblAddData.Text = "a very long text";
Run Code Online (Sandbox Code Playgroud)
但是文本隐藏在我放在
右侧标签旁边的texbox后面.
[ver] [文本框]
以前有人遇到过同样的问题吗?
我知道它缺少信息所以请问我是否需要更多信息.
最
诚挚的问候Görgen
我正在调试一个双向通信的WCF项目.我有一个回调数据,我存储在一个数组客户端,一个WinForm,并用于绘制一个控件.你可以猜到,当我读取数据时,数据从数组中写入(实际上是列表)就消失了.
对于调试,我想看看我是否正在编写和读取相同的对象,以便回调函数不会进行某种复制并将其丢弃.例如,我想看到这个指针的地址.我如何在VS2010 Exp中做到这一点?
编辑
一些代码:
现场声明:
// the cards that the player have
private List<Card> cards = new List<Card>();
Run Code Online (Sandbox Code Playgroud)
回调处理程序:
private void btnDraw_Click(object sender, EventArgs e)
{
Tuple<Card, string> update = PressedDraw(this);
cards.Add(update.Item1);
PaintCards();
}
Run Code Online (Sandbox Code Playgroud)
油漆事件:
private void cardPanel_Paint(object sender, PaintEventArgs e)
{
int counter = 0;
Point fromCorner = new Point(20,12);
int distance = 50;
foreach (Card card in cards)
{
Point pos = fromCorner;
pos.Offset(counter++ * distance, 0);
Bitmap cardBitmap =
cardFaces[Convert.ToInt32(card.suit),
Convert.ToInt32(card.rank)];
Rectangle square = …Run Code Online (Sandbox Code Playgroud) 我已经将C#中的项目转换为F#,绘制了Mandelbrot集.
不幸的是,渲染全屏需要大约一分钟,所以我试着找到一些方法来加快它.
几乎所有时间都是一个电话:
Array.map (fun x -> this.colorArray.[CalcZ x]) xyArray
Run Code Online (Sandbox Code Playgroud)
xyArray (double * double) [] =>(double的元组数组)
colorArray是int32 length = 255的数组
CalcZ 定义为:
let CalcZ (coord:double * double) =
let maxIterations = 255
let rec CalcZHelper (xCoord:double) (yCoord:double) // line break inserted
(x:double) (y:double) iters =
let newx = x * x + xCoord - y * y
let newy = 2.0 * x * y + yCoord
match newx, newy, iters with
| _ when Math.Abs newx > 2.0 …Run Code Online (Sandbox Code Playgroud) 我通过将C#中的程序转换为F#来学习F#
问题在于WritableBitmap,编译器抱怨:
The type tableBitmap is not defined
这是代码:
module MandelbrotBitmap
open System.Windows.Media
open System.Windows.Media.Imaging
type Mandelbrot(width:int) as this =
let mutable _width = width
let mutable _height = 10
let mutable bitmap = new WritableBitmap( _width, _heights, 96.0, 96.0,
PixelFormats.Bgr32, None)
member this.Width
with get() = _width
and set(newVal) = _width <- newVal
Run Code Online (Sandbox Code Playgroud)
将None在instanciation是我尝试更换null原表达.
我PresentationCore和WindowsBase我的参考资料.
bitmap = new WriteableBitmap(
(int)sizeInfo.NewSize.Width,
(int)sizeInfo.NewSize.Height,
96, 96, PixelFormats.Bgr32, null);
Run Code Online (Sandbox Code Playgroud)
这篇msdn文章描述了WriteableBitmap
我的问题是; 什么是编译器抱怨?