1

ここで作成しなければならない簡単なプログラムがありますが、それを開始する方法がよくわかりません。以下に示すように、クラスファイルはすでに定義されています。私がする必要があるのは、Windowsフォームアプリケーションを作成することです(下の図を参照)。テキストボックスに情報を入力してから、下部のrichtextbox1に出力する必要があります。以下に示すものはありませんが、Windowsフォームでは、このクラスファイルにメソッドがある場合、どのようにメソッドを呼び出しますか?

ここに画像の説明を入力してください

class Telephone
{
    private string manufacturer;
    private string model;
    private bool isConnected = false;
    private string lastNumberDialed;
    private string phoneNumber;   

    public Telephone()
    {
    }

    public Telephone(string manufacturer, string model, string phoneNumber)
    {
        Manufacturer = manufacturer;
        Model = model;
        PhoneNumber = phoneNumber;
    }

    public string Manufacturer
    {
        get { return manufacturer; }
        set { manufacturer = value; }
    }

    public string Model
    {
        get { return model; }
        set { model = value; }
    }

    public string PhoneNumber
    {
        get { return phoneNumber; }
        set { phoneNumber = value; }
    }

    new public string ToString()
    {
        return "Manufacturer: " + manufacturer;
    }      
}

そして、これがデザインコードです:

public partial class TelephoneEntryForm : Form
{
    public TelephoneEntryForm()
    {
        InitializeComponent();
    }

    private void btnEnter_Click(object sender, EventArgs e)
    {
    }

    private void btnShowPhones_Click(object sender, EventArgs e)
    {
    }

    private void btnDial_Click(object sender, EventArgs e)
    {
    }

    private void btnRedial_Click(object sender, EventArgs e)
    {
    }

    private void btnHangUp_Click(object sender, EventArgs e)
    {
    }
}
4

3 に答える 3

2

あなたが投稿したコードを誰かがあなたに提供しない限り、あなたはすべてを準備しているので、なぜあなたが誰かにこれを終えるように頼んでいるのか私は本当に理解していません。

テキストボックスデータを表示する前に別のクラスに保存する場合は、コードビハインドでインスタンス化します。

public partial class TelephoneEntryForm : Form
{
    private Telephone telephone;

    public TelephoneEntryForm()
    {
        InitializeComponent();

        telephone = new Telephone();
    }

KeyDown次に、これらすべてのテキストフィールドのイベントをサブスクライブし、それぞれの値をTextBox電話インスタンスのそれぞれのプロパティに保存します。次に、btnShowPhones_Clickで、Telephoneインスタンスの値を使用して。に表示しますRichTextBox

これはあなたにそれをやり遂げるのに十分な情報を与えるはずです。行き詰まった場合は、どこで行き詰まったかをお知らせください。誰かがお手伝いします。

于 2013-03-26T03:29:28.510 に答える
1

さて、私があなたを正しく理解していれば、あなたはすでにボタンEnterクリックイベントハンドラー-btnEnter_Clickメソッドを持っています...つまり、このメソッドで記述されたすべてのコードは、あなたがclickボタンを入力したときに実行されます。

private void btnEnter_Click(object sender, EventArgs e)
{
     // Read tha values of textboxes (not necessarily but more readable)
     string manufacturer = manufacturerTextBox.Text;
     string model = modelTextBox.Text;
     string phoneNumber = phoneNumberTextBox.Text;

     // Create new phone instance, based on entered data
     var telephone = new Telephone(manufacturer, model, phoneNumber);

     // Enter this data to reachtextbox
     richtextbox1.Text += string.Format("{0}\n", telephone);

     // Clear text boxes             
     manufacturerTextBox.Text = modelTextBox.Text = phoneNumberTextBox.Text = string.empty;
 }

ToString()ただし、このようなシナリオでは、メソッドが出力するだけなので、入力したすべてのデータが失われますManufacturer...完全な電話情報を出力するようにこのメソッドを変更する必要があります...次のようなものです。

class Telephone
{
    ...
    public override string ToString()
    {
         return string.Format("Manufacturer: {0}; Model: {1}; Phone number: {2}", Manufacturer, Model, PhoneNumber)
    }
    ...
}

または、このデータを任意のタイプのファイルに保存します。

于 2013-03-26T03:47:07.747 に答える
0

コードを呼び出すためにボタンを接続する方法を尋ねていますか?その場合は、ボタンをダブルクリックしてイベントハンドラーメソッドを作成します。そのメソッド内で、必要なコードへの呼び出しを追加します。

于 2013-03-26T03:27:35.947 に答える