TEdit border size ...

7 отговора 102 прегледа
#1

TEdit border size ...

Някой знае ли как мога да разбера размера на рамката на TEdit ?

Отговор
в отговор на Dark_Dirk #2

Re: TEdit border size ...

Дай малко повече информация какво искаш да направиш!

---
Сънуваш ли баница - яж!
ShadowM
Отговор
в отговор на ShadowM #3

Re: TEdit border size ...

Правя ComboBox, на който dropdown прозореца му е DBGrid.
Всичко му е готово, само имам проблем с позиционирането на екрана.
Сега става така:

Pnt : TPoint;

Pnt := ClientToScreen(Point(0,Self.Height));
FPopupForm.Left := Pnt.X;
FPopupForm.Top := Pnt.Y;

За да е най-чисто трябва да се напише така:

FPopupForm.Left := Pnt.X-BorderWidth;
FPopupForm.Top := Pnt.Y-BorderWidth;

Само че тъпото BorderWidth винаги връща 0, независимо дали BorderStyle e bsNone или bsSingle.

Как да взема адекватно BorderWidth ?

Отговор
в отговор на Dark Dirk #4

Re: TEdit border size ...

Така сега ако съм разбрал правилно искаш този DBGrid да се подравни спрямо TEdit-a. Защо не ползваш тогава TEdit.Left i TEdit.Width:

FPopupForm.Left := TEdit.Left;
FPopupForm.Top := TEdit.Top + TEdit.Height;


---
Сънуваш ли баница - яж!
ShadowM
Отговор
в отговор на ShadowM #5

Re: TEdit border size ...

Не може, защото на DBGrid-a parent-a му е desktopa (ама това бях забравил да го кажа)

Решението е следното:
В кода на моя Edit наследник на TEdit
Self е моя компонент.

if Parent <> nil then begin
Pnt := Parent.ClientToScreen(Point(BoundsRect.Left,BoundsRect.Top));
FPopupForm.Left := Pnt.X;
FPopupForm.Top := Pnt.Y+Height;
end;

Отговор
в отговор на Dark_Dirk #6

Re: TEdit border size ...

Радвам се че си се оправил!

Само не разбирам защо на Parent задаваш Screen (десктоп, по твоята терминология), а не формата, където е твоя Edit: TEdit?

---
Сънуваш ли баница - яж!
ShadowM
Отговор
в отговор на ShadowM #7

Re: TEdit border size ...

Защото един падащ combobox може да излиза и извън тази форма.
Ако дам за Parent формата няма да може.

Отговор
в отговор на Dark_Dirk #8

Re: TEdit border size ...

Мм да, прав си за това!

---
Сънуваш ли баница - яж!
ShadowM
Отговор