![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Плавающие панели как в Photoshop [D6]
tio © (2007-08-09 13:30:00)Уважаемые мастера, можно ли как-нибудь обойти
проблему с фокусом плавающей формы для MDI.
Для не MDI с CreateParams все работает, нужно сделать как в Photoshope.
Кто может помочь.
Заранее спасиюо.
Romkin (2007-08-10 11:59:00) [1]Просто делаешь форму без заголовка. В старых версиях фотошопа, если не ошибаюсь, все заголовки просто ручками прорисованы, они не системные
{RASkov} (2007-08-10 11:47:00) [2]> [6] $FF00FF (10.08.07 08:17)
> вопрос непонятен,и - второй пост КОД!!!
Дык без четкого вопроса код легче всего дать :о)
Тем более кода в данном случае полторы строчки, а остольное просто ресурс формы(dfm) и целиком Unit, т.е. практически вся программа целиком )
> вопрос предельно чётко и ясно сформулирован, указано, в
> чём проблема,и- автора мурыжат тупыми вопросами и указаниями
:) Здесь от многого зависит ответ.... и это не так просто, как дать "примерный" код....
$FF00FF (2007-08-10 08:17:00) [3]Удалено модератором
Примечание: offtop
Германн (2007-08-10 02:44:00) [4]
> {RASkov} © (10.08.07 02:30) [4]
>
> > Он ведь не резиновый!
>
> А что творится в "прочие"... или как раз для него и не хватает?
> :)
>
На то есть McSimm.
> Собственно..... немного согласен, нужно и придерживаться.
> .. иногда.)
>
Угу. Не нужно давать "широкие" ответы на неясные вопросы. Себе же хуже, как правило.
{RASkov} (2007-08-10 02:30:00) [5]> Он ведь не резиновый!
А что творится в "прочие"... или как раз для него и не хватает? :)
> найди у себя "концевой выключатель"!
Вот как раз там("прочие") он у меня почему-то работает :)
Собственно..... немного согласен, нужно и придерживаться... иногда.)
Германн (2007-08-10 02:08:00) [6]
> Врочем [1] +1 т.е. разъяснение не помешает....
А зачем тогда нужно было "захламлять" форум? Он ведь не резиновый!
Саш. Твоё рвение меня радует. Но найди у себя "концевой выключатель"! :)
{RASkov} (2007-08-10 01:53:00) [7]Может быть что-нибудь вот так:
DFM:
object Form1: TForm1
Left = 192
Top = 114
AutoScroll = False
Caption = 'Form1'
ClientHeight = 390
ClientWidth = 709
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
Position = poDefault
Visible = True
PixelsPerInch = 96
TextHeight = 13
object Panel1: TPanel
Left = 8
Top = 52
Width = 185
Height = 89
TabOrder = 0
object Label1: TLabel
Left = 1
Top = 1
Width = 183
Height = 13
Align = alTop
Alignment = taCenter
Caption = 'Ieaaa?uay iaiaeu'
Color = clHighlight
ParentColor = False
OnMouseDown = Label1MouseDown
end
object SpeedButton1: TSpeedButton
Left = 12
Top = 56
Width = 23
Height = 22
end
object CheckBox1: TCheckBox
Left = 12
Top = 28
Width = 97
Height = 17
Caption = 'CheckBox1'
TabOrder = 0
end
object Edit1: TEdit
Left = 52
Top = 56
Width = 121
Height = 21
TabOrder = 1
Text = 'Edit1'
end
end
object Panel2: TPanel
Left = 12
Top = 144
Width = 185
Height = 137
TabOrder = 1
object Label2: TLabel
Left = 1
Top = 1
Width = 183
Height = 13
Align = alTop
Alignment = taCenter
Caption = 'Ieaaa?uay iaiaeu'
Color = clHighlight
ParentColor = False
OnMouseDown = Label1MouseDown
end
object ComboBox1: TComboBox
Left = 20
Top = 24
Width = 145
Height = 21
ItemHeight = 13
TabOrder = 0
Text = 'ComboBox1'
end
object ProgressBar1: TProgressBar
Left = 16
Top = 100
Width = 150
Height = 17
Position = 30
TabOrder = 1
end
object TrackBar1: TTrackBar
Left = 12
Top = 48
Width = 157
Height = 45
Position = 5
TabOrder = 2
end
end
object Panel3: TPanel
Left = 0
Top = 0
Width = 709
Height = 41
Align = alTop
Caption = 'Panel3'
TabOrder = 2
end
end
PAS
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, Buttons, ExtCtrls;
type
TForm1 = class(TForm)
Panel1: TPanel;
Label1: TLabel;
CheckBox1: TCheckBox;
SpeedButton1: TSpeedButton;
Edit1: TEdit;
Panel2: TPanel;
Label2: TLabel;
Panel3: TPanel;
ComboBox1: TComboBox;
ProgressBar1: TProgressBar;
TrackBar1: TTrackBar;
procedure Label1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
(Sender as TControl).Parent.BringToFront;
if Button=mbLeft then begin
ReleaseCapture; (Sender as TControl).Parent.Perform(WM_SYSCOMMAND, $F012, 0);
end;
end;
end.
Правда это не MDI пример, но суть "плавующих панелей" одна.... Можно и Snap организовать и Docking....
Врочем [1] +1 т.е. разъяснение не помешает....
Юрий Зотов (2007-08-09 23:19:00) [8]ЭЭЭ... можно чуть подробнее?