BEERZONE |
Отправлено: 03.11.2006, 01:11 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 21
|
Создаю PaintBox1. Поверх него создаю Label1 и Edit1 в режиме разработки формы приложения. Когда пишу код в режиме выполнения
PaintBox1->Color=clWhite;
PaintBox1->Canvas->FillRect(ClientRect);
то Label1->Caption пропадает, а Edit1->Text остается.
Не могу понять. Ни TLabel, ни TEdit наследниками TPaintBox не являются, почему так происходит? |
|
Valdemar |
Отправлено: 03.11.2006, 08:27 |
|
Мастер участка
Группа: Участник
Сообщений: 433
|
Потому что Label всегда находиться на заднем плане. |
|
poland |
Отправлено: 03.11.2006, 09:52 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 16
|
TLabel рисуется на канве родителя (форма в твоем случае), а она перекрыта канвой PaintBox.
TEdit — полноценное окно, конкурирует при отрисовке с другими окнами. Изменив флаг WS_CLIPSIBLING можешь его тоже спрятать за PaintBox. |
|