2

助けていただければ幸いです。20 個以上のボタンがあり、それぞれに単語、またはスペースまたはピリオドが付いています。ボタンをクリックするたびに、既存の単語が消去され、新しい単語に置き換えられます。「クリア」ボタンをクリックするまで、各単語やスペースをそのままにしておく必要があります。

たぶん、これは以前に別の検索用語で質問/回答されたことがありますか? 文字列変数を特定する必要があると思いがちですが、どうやって始めたらいいのかわかりません。

==============

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class frmSentenceBuilder : Form
    {
        public frmSentenceBuilder()
        {
            InitializeComponent();
        }

        private void frmSentenceBuilder_Load(object sender, EventArgs e)
        {

        }

        private void btnA_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnA.Text;
        }

        private void btn_a_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btn_a.Text;
        }

        private void btnAn_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnAn.Text;
        }

        private void btn_an_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btn_an.Text;
        }

        private void btnThe_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnThe.Text;
        }

        private void btn_the_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btn_the.Text;
        }

        private void btnman_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnman.Text;
        }

        private void btnwoman_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnwoman.Text;
        }

        private void btndog_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btndog.Text;
        }

        private void btncat_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btncat.Text;
        }

        private void btncar_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btncar.Text;
        }

        private void btnbicycle_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnbicycle.Text;
        }

        private void btnbeautiful_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnbeautiful.Text;
        }

        private void btnbig_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnbig.Text;
        }

        private void btnsmall_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnsmall.Text;
        }

        private void btnstrange_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnstrange.Text;
        }

        private void btnlookedat_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnlookedat.Text;
        }

        private void btnrode_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnrode.Text;
        }

        private void btnspoketo_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnspoketo.Text;
        }

        private void btnlaughedat_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnlaughedat.Text;
        }

        private void btndrove_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btndrove.Text;
        }

        private void btnSpace_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = " ";
        }

        private void btnperiod_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnperiod.Text;
        }

        private void btnexclam_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = btnexclam.Text;
        }

        private void btnClear_Click(object sender, EventArgs e)
        {
            lblSentenceText.Text = "";
        }

        private void btnExit_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}
4

5 に答える 5

3

を使用しlb1SentenceText.Text+=whatever.Text;ます。

+= と同等lbSentence.Text = lblSentenceText.Text + whatever.Textです。

基本的に、右側stringを左側に追加または連結しstringます。それが理にかなっていると思いますか?

そう:

string rhs="Hello " ;
string lhs = "World";
string rhs = rhs + lhs;//Hello World
于 2013-02-12T21:08:44.453 に答える
0
//Simple.Create a global variable and within each button click event do this;

string yourStrVar = ""; //Must be global

yourStrVar+=  ((Button)sender).Text
于 2013-02-12T21:33:25.957 に答える
0

試す:

lb1SentenceText.Text = lb1SentenceText.Text + *something*.text

+= 演算子は追加を意味し、変更された変数は、元の値に追加された (Int, String) と等しくなります (x = 1; x += 3; x は現在 4 です)。

これを試して:

button.Click += new System.EventHandler(ButtonClick);
button1.Click += new System.EventHandler(ButtonClick);
// And for each button, one of those.
private void ButtonClick(object sender, System.EventArgs e)
{
// Do whatever you want to do here, you can place the TEXT to be appended on the button, if so:
lb1SentenceText.Text += sender.Text;
}
于 2013-02-12T21:18:12.993 に答える
0

ボタン クリック イベントで、+=代わりに=(クリア ボタンを除く) に変更します。これは、書き込みに相当しますsomething = something + newValue;

于 2013-02-12T21:11:49.173 に答える