Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Регулирование "слоев" приложения 
:(
    Опции темы
boobie
Дата 4.8.2013, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 162
Регистрация: 16.9.2011

Репутация: нет
Всего: нет



Здравствуйте! На форме есть 2 объекта TImage, и один TSpeedButton.
Как вывести Image1 поверх Image2, а на Image1 положить Speedbutton? Поставил Control->Bring to Front, у Image1 и Speedbutton - Image1 стал перекрывать Speedbutton.
Как настроить иерархию компонентов (что поверх чего должно находиться)?
PM   Вверх
boobie
Дата 4.8.2013, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 162
Регистрация: 16.9.2011

Репутация: нет
Всего: нет



Вроде разобрался.
Если вы все делаете мышкой, то проблем не возникнет - располагаете компоненты, если что-то вдруг не видно, то ПКМ по компоненту Control->засунуть вниз или вытащить наверх.
Если же вы регулируете местоположение в коде, или же пишете все ручками, то после установки размеров и местоположения нескольких компонентов на одном участке формы (если есть подозрения, что компоненты накладываются друг на друга), то необходимо прописывать каждому компоненту "bringtofront" в нужном порядке.
Код

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.StdCtrls, Vcl.Buttons;

type
  TForm1 = class(TForm)
    Image1: TImage;
    Image2: TImage;
    SpeedButton1: TSpeedButton;

    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
  sb:tspeedbutton;
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin

speedbutton1.Left:=100;
speedbutton1.Top:=100;
sb:=tspeedbutton.Create(form1);
sb.Parent:=speedbutton1.Parent;
sb.Top:=100;
sb.Left:=100;
sb.Height:=50;
sb.Width:=50;
sb.Enabled:=true;
sb.Visible:=true;

image1.Top:=100;
image1.Left:=100;
image2.Top:=100;
image2.Left:=100;

image2.BringToFront;//вытаскиваем наверх сначала image2
image1.BringToFront;//затем поверх имэйдж1
sb.bringtofront;        //поверх самопальную кнопку
speedbutton1.bringtofront;//и т.д.
end;

end.


Правильно я рассуждаю? 
Почему с обычным Button-ом так нельзя? Он всегда находится поверх Image и Speedbutton-ов!!

Это сообщение отредактировал(а) boobie - 4.8.2013, 14:11
PM   Вверх
Чучмек
Дата 4.8.2013, 14:44 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЭТ БИЛЭТ
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 11.5.2008
Где: СССР

Репутация: 7
Всего: 41



Цитата(boobie @  4.8.2013,  14:05 Найти цитируемый пост)
Почему с обычным Button-ом так нельзя? Он всегда находится поверх Image и Speedbutton-ов!!

Потому что TButton это окно,  а TSpeedButton и TImage - нет.

Это сообщение отредактировал(а) Чучмек - 4.8.2013, 14:45


--------------------
умную мысль держи при себе, а дурной - поделись с другими 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0598 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.