Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.03.11;
Скачать: [xml.tar.bz2];

Вниз

Отрисовка 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.14 c
2-1171975449
Познающий
2007-02-20 15:44
2007.03.11
Доступ к ресурсам


2-1171957505
Wall
2007-02-20 10:45
2007.03.11
текущая директория


15-1171521922
Александр Иванов
2007-02-15 09:45
2007.03.11
Создан квантовый компьютер


2-1171743542
Странник81
2007-02-17 23:19
2007.03.11
Можно ли вывести содержимое ячеек StringGrid в динамический масси


15-1171596526
Slider007
2007-02-16 06:28
2007.03.11
С днем рождения ! 16 февраля





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский