-6

我想知道是否有人可以帮助我将以下代码转换为 c#?从我读过的内容来看,它似乎很相似,但是我不确定我的“案例”陈述是否仍然可以使用?

Public Class Form1

    Dim dteStart As Date
    Dim dteFinish As Date
    Dim span As TimeSpan

    Public Sub KeyDown(ByVal Sender As System.Object, ByVal e As  _
    System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown

        Select Case e.KeyCode
            Case Keys.Q
                Label1.BackColor = Color.Green
                dteStart = Now()
            Case Keys.W
                Label2.BackColor = Color.Green
            Case Keys.E
                Label3.BackColor = Color.Green
            Case Keys.R
                Label4.BackColor = Color.Green
                dteFinish = Now()
                span = dteFinish.Subtract(dteStart)
                Label5.Text = span.ToString

        End Select

    End Sub

    Public Sub KeyUp(ByVal Sender As System.Object, ByVal e As  _
   System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyUp

        Select Case e.KeyCode
            Case Keys.Q
                Label1.BackColor = Color.Red
            Case Keys.W
                Label2.BackColor = Color.Red
            Case Keys.E
                Label3.BackColor = Color.Red
            Case Keys.R
                Label4.BackColor = Color.Red
        End Select

    End Sub
End Class
4

4 回答 4

4

这不是“为我做这个”请求的地方。为此,您可以聘请程序员。

在您自己尝试过某事之后,可以在这里寻求建议或指导。

无论如何,我将向您展示如何转换Select Case为它的 C# 等价物,您可以从那里获取它。

语句之一的示例代码:

switch (e.KeyCode)
{
    case Keys.Q:
        Label1.BackColor = Color.Red;
        break;
    case Keys.W:
        Label2.BackColor = Color.Red;
        break;
    //.....
}

注意事项:

  1. 与 C# 中的任何内容一样,大小写很重要 - 例如Case必须变为case.
  2. 您必须break在每个案例之后添加。
于 2012-03-25T11:24:24.793 回答
1

您可以使用在线工具将 C# 转换为 Vb,反之亦然

http://www.developerfusion.com/tools/convert/vb-to-csharp/

于 2012-03-25T13:32:07.117 回答
0
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;

public class Form1
{

    System.DateTime dateStart;
    System.DateTime dteFinish;

    TimeSpan span;

    public void KeyDown(System.Object Sender, System.Windows.Forms.KeyEventArgs e)
    {
        switch (e.KeyCode) {
            case Keys.Q:
                Label1.BackColor = Color.Green;
                dteStart = DateAndTime.Now();
                break;
            case Keys.W:
                Label2.BackColor = Color.Green;
                break;
            case Keys.E:
                Label3.BackColor = Color.Green;
                break;
            case Keys.R:
                Label4.BackColor = Color.Green;
                dteFinish = DateAndTime.Now();
                span = dteFinish.Subtract(dteStart);
                Label5.Text = span.ToString();

                break;
        }

    }


    public void KeyUp(System.Object Sender, System.Windows.Forms.KeyEventArgs e)
    {
        switch (e.KeyCode) {
            case Keys.Q:
                Label1.BackColor = Color.Red;
                break;
            case Keys.W:
                Label2.BackColor = Color.Red;
                break;
            case Keys.E:
                Label3.BackColor = Color.Red;
                break;
            case Keys.R:
                Label4.BackColor = Color.Red;
                break;
        }

    }
    public Form1()
    {
        KeyUp += KeyUp;
        KeyDown += KeyDown;
    }
}
于 2012-03-25T11:25:17.413 回答
0

使用此在线工具转换您的代码:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
public class Form1
{

    System.DateTime dteStart;
    System.DateTime dteFinish;

    TimeSpan span;

    public void KeyDown(System.Object Sender, System.Windows.Forms.KeyEventArgs e)
    {
        switch (e.KeyCode) {
            case Keys.Q:
                Label1.BackColor = Color.Green;
                dteStart = DateAndTime.Now();
                break;
            case Keys.W:
                Label2.BackColor = Color.Green;
                break;
            case Keys.E:
                Label3.BackColor = Color.Green;
                break;
            case Keys.R:
                Label4.BackColor = Color.Green;
                dteFinish = DateAndTime.Now();
                span = dteFinish.Subtract(dteStart);
                Label5.Text = span.ToString();

                break;
        }

    }


    public void KeyUp(System.Object Sender, System.Windows.Forms.KeyEventArgs e)
    {
        switch (e.KeyCode) {
            case Keys.Q:
                Label1.BackColor = Color.Red;
                break;
            case Keys.W:
                Label2.BackColor = Color.Red;
                break;
            case Keys.E:
                Label3.BackColor = Color.Red;
                break;
            case Keys.R:
                Label4.BackColor = Color.Red;
                break;
        }

    }
    public Form1()
    {
        KeyUp += KeyUp;
        KeyDown += KeyDown;
    }
}
于 2012-03-25T11:30:49.437 回答