Мой разум как-то застрял в «цикле ошибок». Я больше не хочу тратить время на бесконечные проб и ошибок, поэтому лучше спросить здесь:
У меня есть Windows-Form (.NET, C ++), как показано ниже. Упрощенная версия здесь имеет только RichTextBox, статическую и нестатическую функцию-член. Добавление текста в RichTextBox из нестатической функции " nonstaticFunc () " работает как положено.
Но как я могу сделать это из статической функции-члена " staticFunc () "? Я попробовал несколько подходов, предложенных на этом форуме, о том, как вызывать нестатические функции из статических функций, но почему-то я не мог понять, как это сделать.
public ref class Form1 : public System::Windows::Forms::Form
{
public:
Form1()
{
InitializeComponent();
}
protected:
~Form1()
{
if (components)
{
delete components;
}
}
protected:
private:
System::ComponentModel::Container ^components;
private: System::Windows::Forms::RichTextBox^ myTextBox;
System::VoidInitializeComponent( System::Void )
{
System::ComponentModel::ComponentResourceManager^ resources = (gcnew System::ComponentModel::ComponentResourceManager(Form1::typeid));
this->myTextBox = (gcnew System::Windows::Forms::RichTextBox());
}
public: System::Void nonstaticFunc( System::Void )
{
this->myTextBox->AppendText( L"Append this...\n" );
}
public: static System::Void staticFunc( System::Void )
{
// How do I AppendText here??
// Not working: this->myTextBox->AppendText( L"Append this...\n" );
}
}
Спасибо за каждую маленькую помощь! Ценится много!