Visual C ++将文本框链接到类

时间:2015-06-28 23:52:53

标签: visual-studio-2008 c++-cli

我想创建一个将文本框和两个按钮绑在一起的新类。我无法发布图片,因为我没有声誉。

基本上它是一个只接受数字的文本框,当单击该按钮时,它会根据它所在的按钮递增或递减。我知道这听起来像是一个numericUpDown控件,我应该只使用其中一个,但出于某些原因我不能。

我目前设置的方式是文本框可能只接受范围内的数字,而按钮的clickevent是增加或减少文本框编号。

然而,这需要大量跳转代码并将点击的发件人链接到正确的文本框等。

if (sender) { 
   TextBox^ senderBox = (TextBox^)sender;
         if (senderBox->Text != "") {
                if (senderBox->Name == "waitTimeNum" && System::Convert::ToInt32(waitTimeNum->Text) > waitTimeMax ){
                    this->waitTimeNum->Text = System::Convert::ToString(System::Convert::ToInt32(waitTimeMax));
                }
                else if (senderBox->Name == "waitTimeNum" && System::Convert::ToInt32(waitTimeNum->Text) < waitTimeMin ){
                    this->waitTimeNum->Text = System::Convert::ToString(System::Convert::ToInt32(waitTimeMin));
                }
                else if (senderBox->Name == "amplitudeNum" && System::Convert::ToInt32(amplitudeNum->Text) > amplitudeMax ){
                    this->amplitudeNum->Text = System::Convert::ToString(System::Convert::ToInt32(amplitudeMax));
                }
                else if (senderBox->Name == "amplitudeNum" && System::Convert::ToInt32(amplitudeNum->Text) < amplitudeMin ){
                    this->amplitudeNum->Text = System::Convert::ToString(System::Convert::ToInt32(amplitudeMin));
                }
                else if (senderBox->Name == "durationNum" && System::Convert::ToInt32(durationNum->Text) > durationMax ){
                    this->durationNum->Text = System::Convert::ToString(System::Convert::ToInt32(durationMax));
                }
                else if (senderBox->Name == "durationNum" && System::Convert::ToInt32(durationNum->Text) < durationMin ){
                    this->durationNum->Text = System::Convert::ToString(System::Convert::ToInt32(durationMin));
             }
        }
}     

相反,我想制作一个新的类控件,其中可以添加一个文本框和两个按钮,并自动设置为彼此相邻。

我希望班级拥有以下属性:

  • 最大
  • 最小
  • 增量值
  • 一个向上按钮
  • 一个向下按钮
  • 一个文本框
  • 一个名字
  • a&#39; text&#39; (表格上显示的内容)

然后应该可以使用方法&#39;增加&#39;来调用按钮。例如,正确的文本框应该递增。

我已经查看了自定义控件和那种东西但却找不到类似的东西。有没有人对如何做到这一点有任何想法?

0 个答案:

没有答案