powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Прозрачность TcxEdit
12 сообщений из 12, страница 1 из 1
Прозрачность TcxEdit
    #39874489
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi Tokyo, TcxEdit, TcxLookupCombobox.

Как реализовать прозрачность?
Чтобы в итоге строка ввода и список выбора были прозрачны, но в виде тонко линии.
Ну так примерно, как на картинке
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39874491
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если использовать TForm.TransparentColor, то в форме получается дыра до Рабочего стола.
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39874492
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дело в том, что на форме есть градиент и нужно его соблюсти и у элементов ввода
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39874504
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблем с border нету, но прозрачность cx-компоненты не поддерживают, как я понял.
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39875804
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39875839
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно. Первая же тема в саппорте девэкспрессов:

https://www.devexpress.com/Support/Center/Question/Details/T214628/how-to-create-custom-component-with-transparent-background
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39875851
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBr Стиль WS_EX_LAYERED для дочерних окон в Windows 8
Однако не все так радужно…
Первое что бросается в глаза это то, что создаются такие окна очень медлительно, раз в 10 медленней обычных.
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39875865
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDiМожно. Первая же тема в саппорте девэкспрессов:

https://www.devexpress.com/Support/Center/Question/Details/T214628/how-to-create-custom-component-with-transparent-background

Никакой прозрачности на наблюдается априори
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39875930
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11Однако не все так радужно…
Первое что бросается в глаза это то, что создаются такие окна очень медлительно, раз в 10 медленней обычных.
Тебе 100 кнопок таких создавать надо или одно поле ввода?..
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39876120
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBr,

мой косяк, не заметил замечание от техподдержки -- оказывается, такое можно провернуть только для своих кастомных компонентов, а большинство редакторов девок пойдут лесом, т.к. используют системные контролы ввода, которые никак не контролируются (как раз случай с TcxTextEdit). Из рекомендаций техподдержки: подбирать цвет фона такой же как у формы, использовать лейбл и делать автозамену на контрол при клике (начале ввода) как это делается во всяких гридах/трилистах.
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39876382
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDiDimaBr,

мой косяк, не заметил замечание от техподдержки -- оказывается, такое можно провернуть только для своих кастомных компонентов, а большинство редакторов девок пойдут лесом, т.к. используют системные контролы ввода, которые никак не контролируются (как раз случай с TcxTextEdit). Из рекомендаций техподдержки: подбирать цвет фона такой же как у формы, использовать лейбл и делать автозамену на контрол при клике (начале ввода) как это делается во всяких гридах/трилистах.

Делал давно у себя в проекте такое

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
  TcxMyEditViewInfo = class(TcxCustomEditViewInfo)
  private
    FContent: string;
  public
    constructor Create; override;
    procedure SetContent(AValue: TcxEditValue);
    destructor Destroy; override;
    procedure Paint(ACanvas: TcxCanvas); override;
  end;

  TcxMyEditViewData = class(TcxCustomEditViewData)
  public
    procedure EditValueToDrawValue(ACanvas: TcxCanvas;
      const AEditValue: TcxEditValue;
      AViewInfo: TcxCustomEditViewInfo); override;
      function GetEditContentSize(ACanvas: TcxCanvas;
      const AEditValue: TcxEditValue;
      const AEditSizeProperties: TcxEditSizeProperties): TSize; override;
    function GetClientExtent(ACanvas: TcxCanvas;
      AViewInfo: TcxCustomEditViewInfo): TRect; override;
  end;

  TcxMyEditProperties = class(TcxCustomEditProperties)
  protected
    class function GetViewDataClass: TcxCustomEditViewDataClass; override;
  public
    function GetSupportedOperations: TcxEditSupportedOperations; override;
    function GetEditValueSource(AEditFocused: Boolean): TcxDataEditValueSource; override;
    class function GetViewInfoClass: TcxContainerViewInfoClass; override;
  end;



и отрисовывал Edit самостоятельно, как душе угодно
...
Рейтинг: 0 / 0
Прозрачность TcxEdit
    #39876726
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КвейдДелал давно у себя в проекте такоеЧто-то слишком много написал для перекрытия метода Paint
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Прозрачность TcxEdit
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]