Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.11;
Скачать: 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 вся ветка

Текущий архив: 2007.03.11;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.03 c
2-1171959306
vitv
2007-02-20 11:15
2007.03.11
DBGrid11CellClick(Column: TColumn);-вопрос реализации


2-1172051723
Максимус
2007-02-21 12:55
2007.03.11
Связанные таблицы


2-1171790032
VadimSpb
2007-02-18 12:13
2007.03.11
Создание текстового файла в ASCII


2-1171982524
Sapos
2007-02-20 17:42
2007.03.11
DBEdit


15-1171347018
Леприкон
2007-02-13 09:10
2007.03.11
Компонент для панели поиска