Элементы управления
Буду благодарен...
Как в цикле создавать элементы управления, если их один, два, то это понятно, а если их, ну например, Image1 - Image500? Это не шутка, это в полном серьезе. Или может есть другой способ?!
Буду благодарен...
500 возможно ты толком на экране не разместишь. Все зависит от того какие операции планируешь с ними делать. Может достаточно отобразить все на какой-то невидимый Caption и помнить только x, y, width, height.
А если нужно действительно создать, то главное сохранять указатель на эти Image, и перед выходом с программы удалить все созданные контролы. Если наперед неизвестно число элементов, то указатели можно хранить в vector-е.
500 возможно ты толком на экране не разместишь. Все зависит от того какие операции планируешь с ними делать. Может достаточно отобразить все на какой-то невидимый Caption и помнить только x, y, width, height.
Нет их именно надо разместить на форме. дело в том, что размер самих компанент очень мал, например 4х4, и располагаются они так 10 шт. в столбце, 50 - в строке.
Нет их именно надо разместить на форме. дело в том, что размер самих компанент очень мал, например 4х4, и располагаются они так 10 шт. в столбце, 50 - в строке.
Может подойдет TDrawGrid? Установить
все поля Options в false,
Scrollbar в ssNone,
Enabled в False,
DefaultDrawing в false
FixedCols, FixedRows 0
Cols 50, Rows 10
DefaultColWidth 4,DefaultColHeight 4
И обработать событие OnDrawCell.
Получится, что-то типа:
А можно это как-то в виде кода продемонстрировать?!
int ARow, TRect &Rect, TGridDrawState State)
{
DrawGrid1->Canvas->Brush->Color = RGB(rand()%256, rand()%256, rand()%256);
DrawGrid1->Canvas->FillRect(Rect);
}
Но тебе наверно если это связано с бегущей строкой цвет конкретной ячейки нужно будет выбирать из какого-то массива.
int ARow, TRect &Rect, TGridDrawState State)
{
DrawGrid1->Canvas->Brush->Color = RGB(rand()%256, rand()%256, rand()%256);
DrawGrid1->Canvas->FillRect(Rect);
}
Но тебе наверно если это связано с бегущей строкой цвет конкретной ячейки нужно будет выбирать из какого-то массива.
Цвет будет один. А задать его можно будет из диалога ColorDialog, если понадобиться.
Большое спасибо за ответ. :)
Как в цикле создавать элементы управления, если их один, два, то это понятно, а если их, ну например, Image1 - Image500? Это не шутка, это в полном серьезе. Или может есть другой способ?!
Буду благодарен...
А какя разница между динамическим соданием 1 - 2 компонент и 500?