Я делаю сетку, состоящую из кнопок 9x9 на панели макета Flow.
Я узнал, что панель макета Flow может автоматически упорядочивать и автоматически изменять размер кнопок, которые я буду добавлять. Я также узнал, что с помощью этого кода я могу создать массив кнопок в цифровом виде.
cli::array<Button^, 2>^ matrix = gcnew cli::array<Button^, 2>(9, 9);
который создает двумерный массив кнопок, состоящий из элементов 9x9, но я хочу спросить, как мне отобразить его в интерфейсе?
У меня была идея что-то вроде этого
private: System::Void Area_Paint(System::Object^ sender, System::Windows::Forms::PaintEventArgs^ e)
{
//"Area" is the name of the Flow layout Panel
cli::array<Button^, 2>^ matrix = gcnew cli::array<Button^, 2>(9, 9);
for (int oucounter = 0; oucounter < 9; oucounter++)
{
for (int incounter = 0; incounter < 9; incounter++)
{
matrix[oucounter][incounter]->Parent = this; //error
matrix[oucounter][incounter]->Text = "0"; //error
}
}
}
Хотя у меня ошибка "недопустимое количество индексов для этого типа cli::array".
Я также хочу добавить элементы управления в кнопки. Всякий раз, когда я нажимаю определенную кнопку, я хочу, чтобы она отображала увеличивающееся значение на своем номере.
Любая помощь будет оценена по достоинству. Кроме того, пожалуйста, дайте мне знать, если мои начальные коды в чем-то неверны. Спасибо!
"this->Children->Add(matrix[oucounter, incounter]);"
', который является классом CppWinForm1::MyFormhas no Member Children. Я думаю, что это проблема, почему я не могу поместить кнопку на панель макета потока. 10.10.2016