Вниз
Скачать: CL | DM;

Отрисовка Tedit на другом Tcanvas   Найти похожие ветки 

 
antonn ©   (2007-02-21 12:56) [0]

Вот такая задача, есть несколько TEdit (возможно будут Tmemo) на форме. Мне на другой форме нужно отрисовать эти Tedit, причем нужно отрисовать при каждой перерисовки их (т.е. поставили курсор в Edit, на канве другой форме долже н отрисоваться этот edit с курсором). Т.е. сделать так, что бы этот Tedit отображался сразу на двух формах (ну, ессно, работал только на первой:)).
не пойму, честно говоря, откуда начинать?.. Мне кроме отрисовки этого Эдита больше ничего в программе и не нужно (вариант с таймером был убит после 15 минут использования - не нормально это, а как ловить сообщения по перерисовке - не пойму). Может кто сталкивался, покажет? :)


 
Юрий Зотов ©   (2007-02-21 15:06) [1]

А зачем рисовать? Гораздо проще создавать.


 
Джо ©   (2007-02-21 15:18) [2]

Edit1.PaintTo


 
antonn ©   (2007-02-21 15:29) [3]

Джо ©   (21.02.07 15:18) [2]
да это я знаю, я не пойму, при каких событиях его нужно использовать. Т.е. как отловить от Tedit, что он перерисовался?

Юрий Зотов ©   (21.02.07 15:06) [1]
как на Tbitmap создать Tedit? вот так следовало сразу сформулировать. Мне вообще нужно на другой канвас вывести, ну да пускай будет TBitmap;


 
antonn ©   (2007-02-21 15:32) [4]

Да же еще вот так. Есть функция UpdateLayeredWindow(), использует Tbitmap, который "показывает" вместо формы. Ессно никаких контролов не видно, если их не рисовать самому на этом битмапе. Вот что то типа этого мне и нужно сделать - отрисовать TEdit на другом канвасе (ну и еще нужно с другими координатами относительно самого канваса, но это мелочи).


 
Джо ©   (2007-02-21 15:35) [5]

> [3] antonn ©   (21.02.07 15:29)
> Джо ©   (21.02.07 15:18) [2]
> да это я знаю, я не пойму, при каких событиях его нужно
> использовать. Т.е. как отловить от Tedit, что он перерисовался?

Ну, отрисовывается он, по большей части, при изменении своего содержимого (текста). Вот и используй OnChange.


 
antonn ©   (2007-02-21 15:44) [6]

Джо ©   (21.02.07 15:35) [5]
а смена позиции курсора? а выделение части текста в нем?
К тому же я хотел и Tbutton так же отрисовывать на битмап...


 
antonn ©   (2007-02-21 15:46) [7]

Или может кто видел в "скинных" компанентах подобный код? (ну в тех, что открыты кодом. Вообще, есть такие?)


 
Юрий Зотов ©   (2007-02-21 17:03) [8]

> antonn ©   (21.02.07 15:29) [3]

Речь шла о форме... ну да ладно, пусть будет битмап.

Битмап этот, в конечном счете, отрисован на каком-то окне. Вот оно, это окно и может быть родителем для нового Edit"а.


 
antonn ©   (2007-02-21 17:09) [9]

Юрий Зотов ©   (21.02.07 17:03) [8]
нет, речь шла именно о другом канвасе, битмап нигде не отрисовывается (точнее он не отрисовывается на окне, к тому же может понадобится обработка (ну в серпию перекрасить палитру, например)). Вот:)


 
antonn ©   (2007-02-21 17:13) [10]

а еще через PaintTo() не рисуется курсор в Tmemo... :(


 
antonn ©   (2007-02-21 17:14) [11]

А можно ли компоненту назначить "графический вывод" на другой канвас (типа parent - на чем лежит, а какой нибудь parentDraw - хендл канвы вывода)?


 
webpauk   (2007-02-21 17:23) [12]

может SendMessage...
на одной форме (главной) - в коде обработчика события посылаешь сообщение другой форме (GetWindow etc) на те же самые действия (WM_SETTEXT etc)


 
webpauk   (2007-02-21 17:24) [13]

при условии что на другой форме есть те же Tedit, а иначе их еще и создавать.
Короче, путь тебе лежит в API


 
antonn ©   (2007-02-21 19:08) [14]

ладно, уберем форму другую, чтоб не смущала:)
как на Tbitmap иметь визуальную копию Tmemo? т.е. я выделаю в нем текст, на битмапе как же нарисован tmemo и в нем выделен текст, проматываю вниз - на битмапе промотаный tmemo. Мне не только Tedit нужен, хотелось бы иметь универсальное решение для TwinControl (чтоб рисовать Tedit/Tbutton/Tmemo)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.028 c
2-1171980520
koha
2007-02-20 17:08
2007.03.11
передать в функцию переменную любого типа


3-1166111990
The X
2006-12-14 18:59
2007.03.11
Изменение структуры полей Paradox.


2-1171977401
vitv
2007-02-20 16:16
2007.03.11
Ошибка при DBGrid12.SelectedField.FocusControl


15-1170754657
IMHO
2007-02-06 12:37
2007.03.11
Слово о допинге в спорте


15-1171349221
chvank
2007-02-13 09:47
2007.03.11
Photoshop




   Наверх