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

Вниз

RichEdit v2+   Найти похожие ветки 

 
Yuri Btr ©   (2006-04-07 17:44) [0]

Добрый день, подскажите кто может:
я пытаюсь в своей программе использовать RichEdit, но так как компонент TRichEdit с закладки Win32 использует библиотеку первой версии (а мне нужно более поздние), я создаю динамически окно:
  hRichEditLib:=LoadLibraryEx(PChar(RichEditModuleName),0,0);

hRichEdit:=CreateWindow(PChar(RichEditClassName),
                        PChar("RE1"),
                        WS_CHILD or WS_VISIBLE or WS_BORDER or ES_MULTILINE or WS_VSCROLL or ES_NOHIDESEL or ES_DISABLENOSCROLL,
                        0,
                        P1.Height,
                        Self.ClientWidth,
                        Self.ClientHeight,
                        Self.Handle,
                        0,
                        0,
                        nil);


Причём
RichEditModuleName="MSFTEDIT.DLL"
RichEditClassName="RICHEDIT_CLASS" согласно MSDN,
но библиотека загружается, а окно не создаётся - GetLastError возвращает 1407 - "Class not found"
Почему бы это ?


 
Fay ©   (2006-04-07 17:58) [1]

А перекрыть CreateParams не помогает?


 
Yuri Btr ©   (2006-04-07 18:03) [2]

to Fay ©   (07.04.06 17:58) [1]
В смысле у TRichEdit перекрыть ???, то там надо перерыть весь код, я уже смотрел ...


 
Yuri Btr ©   (2006-04-07 18:13) [3]

Тем более что перекрывать надо по идее TCustomRichEdit.CreateParams, т.е. писать наследника TCustomRichEdit - фактически создавая дубликат TRichEdit"у


 
Eraser ©   (2006-04-07 18:34) [4]


> Yuri Btr ©   (07.04.06 18:13) [3]

см. TjvRichEdit из JEDI VCL


 
Yuri Btr ©   (2006-04-07 18:36) [5]

to Eraser ©   (07.04.06 18:34) [4]
Погляжу, ОК


 
Fay ©   (2006-04-07 19:18) [6]

2 Yuri Btr ©   (07.04.06 18:03) [2]
> там надо перерыть весь код
Почему это весь?


 
Yuri Btr ©   (2006-04-07 22:10) [7]

to Fay ©   (07.04.06 19:18) [6]
Дело в том, что я не уверен, что можно через наследника TRichEdit перекрыть CreateParams у его предка TCustomRichEdit, я задал этот вопрос здесь -  http://delphimaster.net/view/5-1144420112/ , но уважаемый мною MBo пока не ответил

Если вы знаете как это сделать, прошу вас написать
Но всё равно вопрос ветки останется открытым, почему класс RICHEDIT_CLASS не доступен ???


 
Fay ©   (2006-04-08 04:03) [8]

#define MSFTEDIT_CLASS  L"RICHEDIT50W"
// NOTE:  MSFTEDIT.DLL only registers MSFTEDIT_CLASS.  If an application wants
// to use the following Richedit classes, it needs to load the riched20.dll.
// Otherwise, CreateWindow with RICHEDIT_CLASS would fail.
// This also applies to any dialog that uses RICHEDIT_CLASS,

// RichEdit 2.0 Window Class
// On Windows CE, avoid possible conflicts on Win95
#define CERICHEDIT_CLASSA "RichEditCEA"
#define CERICHEDIT_CLASSW L"RichEditCEW"

#define RICHEDIT_CLASSA  "RichEdit20A"
#define RICHEDIT_CLASS10A "RICHEDIT"   // Richedit 1.0

#ifndef MACPORT
#define RICHEDIT_CLASSW  L"RichEdit20W"
#else //----------------------MACPORT
#define RICHEDIT_CLASSW  TEXT("RichEdit20W") // MACPORT change
#endif // MACPORT  

#if (_RICHEDIT_VER >= 0x0200 )
#ifdef UNICODE
#define RICHEDIT_CLASS  RICHEDIT_CLASSW
#else
#define RICHEDIT_CLASS  RICHEDIT_CLASSA
#endif // UNICODE
#else
#define RICHEDIT_CLASS  RICHEDIT_CLASS10A
#endif // _RICHEDIT_VER >= 0x0200



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

Форум: "WinAPI";
Текущий архив: 2006.07.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.011 c
15-1150560517
TUser
2006-06-17 20:08
2006.07.16
Рассылочка пришла


2-1151236718
Gizza
2006-06-25 15:58
2006.07.16
Запуск файла


15-1150393800
TUser
2006-06-15 21:50
2006.07.16
Плагин бы ...


2-1151467285
Freze_Kati
2006-06-28 08:01
2006.07.16
Как вставить часть французского текста?


15-1150014980
Карелин Артем
2006-06-11 12:36
2006.07.16
Лицензионные DVD.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский