В делфях после 7й версии появилась функция AlwaysShowDragImages, что позволяло показывать DragImage везде. В 7й же версии ее еще нет и мне надо сделать ее аналог.
Задача добавить каждому элементу формы новый ControlStyle - [csDisplayDragImage], что позволит прорисовывать DragImage везде.
Пробовал так:
Код:
i:=0;
repeat
Controls[i].ControlStyle := Controls[i].ControlStyle + [csDisplayDragImage];
Inc(i);
until i = ControlsCount-1;
Но ControlsCount возвращает всего 2, и я прохожу так только 2 елемента.
Если вместо Controls и ControlCount использовать Components и ComponentsStyle соответственно, то уже проходит 125 елементов, но тут беда, поменять ControlStyle могу только так:
Код:
i:=0;
repeat
if (Components[i] is TPanel) then (Components[i] as TPanel).ControlStyle := (Components[i] as TPanel).ControlStyle + [csDisplayDragImage];
Inc(i);
until i = ComponentCount-1;
но в этом случае меняется только для TPanel и придется подставлять вместо TPanel все виды контролов, что есть.
Что можете посоветовать, бравые молодцы?))) Как побороть это и прорисовать эту картинку везде?