RichEdit 2.0
Решил написать программку, работающую с текстом, ну и захотелось мне использовать текст не простой, а форматированный (наконец-то руки дошли до RTF, раньше даже как-то и нужды в нём не было...) И вот, не долго думая, создал я диалог, изгалился чуть-чуть, отрисовав в нём пару кнопочек с эффектом а-ля каустика, полюбовался немного, сказал про себя "ЛЯПОТА!!!" и приступил, наконец, к реализации основной части программы. А по сему воткнул в диалог Rich Edit Control 2.0 с Toolbox'а, и, довольно потирая руки, щёлкнул кнопку run, предвкушая, как вставлю щас какой-нибудь фрагмент из Word'а и полюбуюсь буйством шрифтов, стилей и красок в окне своей программы. Но... Не тут-то было! Аплет попробовал загузиться, но, то ли у него это не очень-то получилось, то ли он просто передумал, в общем, прога тут же закрылась, так и не показав мне плоды моего упорного труда... Чё за на фиг? - подумал я, - неужели я за последние тридцать секунд уже успел косых напороть? Ну прямо новый рекорд получился!!! Поудивлялся немного, собрался с мыслями, и начал жуков искать. Тщетно... Наставил кучу брякпоинтов, оттрасировал всё, что только можно было, каждую строчку кода под дебагером просмотрел - вроде ровно всё, а в итоге резалт в dlg.DoModal() = -1, и всё тут!!! Догадался удалить RichEdit (хорошая мысля приходит опосля :)) - натте вам, зафунциклировало! Навело на очередную мысль... Мысль как-то плавно и медленно перетекла в пальцы, открыла msdn и наклацала на клавиатуре слово RichEdit в поле search. Ага!!! Смотрю первый же топик - RichEdit 1.0 control on MFC он назывался. "Не, ну не совсем то, что надо, ну да фиг с ним, гляну, что там пишут" - промелькнуло в голове. Читаю: "To use the RichEdit 1.0 control, you need to call ::LoadLibrary("riched32.dll") from WinApp::InitInstance" Ну, думаю, где один, там и второй живёт, короче, реализую... Не тут-то было!!! Всё по старому осталось. И так крутил, и сяк - не растёт кокос... Ладно, думаю, я тебя всё равно победю, и начал уточнять запросы, типа RichEdit 2.0 use, RichEdit 2.0 create и т. д. И вот всякая фигня повываливалась, хоть бы чего полезного... Короче, линке так на сороковом НАШЁЛ: "To use a RichEdit control, you must first call AfxInitRichEdit. In Visual Studio .NET, this function always loads RICHED20.DLL (instead of RICHED32.dll as in Visual C++ 6.0)." Епрст... Вот на пустом месте - столько времени! Кто бы догадался... Конспираторы, блин...
Цитата:
Originally posted by HarryAxe
Решил написать программку, работающую с текстом, ну и захотелось мне использовать текст не простой, а форматированный (наконец-то руки дошли до RTF, раньше даже как-то и нужды в нём не было...) И вот, не долго думая, создал я диалог, изгалился чуть-чуть, отрисовав в нём пару кнопочек с эффектом а-ля каустика, полюбовался немного, сказал про себя "ЛЯПОТА!!!" и приступил, наконец, к реализации основной части программы. А по сему воткнул в диалог Rich Edit Control 2.0 с Toolbox'а, и, довольно потирая руки, щёлкнул кнопку run, предвкушая, как вставлю щас какой-нибудь фрагмент из Word'а и полюбуюсь буйством шрифтов, стилей и красок в окне своей программы. Но... Не тут-то было! Аплет попробовал загузиться, но, то ли у него это не очень-то получилось, то ли он просто передумал, в общем, прога тут же закрылась, так и не показав мне плоды моего упорного труда... Чё за на фиг? - подумал я, - неужели я за последние тридцать секунд уже успел косых напороть? Ну прямо новый рекорд получился!!! Поудивлялся немного, собрался с мыслями, и начал жуков искать. Тщетно... Наставил кучу брякпоинтов, оттрасировал всё, что только можно было, каждую строчку кода под дебагером просмотрел - вроде ровно всё, а в итоге резалт в dlg.DoModal() = -1, и всё тут!!! Догадался удалить RichEdit (хорошая мысля приходит опосля :)) - натте вам, зафунциклировало! Навело на очередную мысль... Мысль как-то плавно и медленно перетекла в пальцы, открыла msdn и наклацала на клавиатуре слово RichEdit в поле search. Ага!!! Смотрю первый же топик - RichEdit 1.0 control on MFC он назывался. "Не, ну не совсем то, что надо, ну да фиг с ним, гляну, что там пишут" - промелькнуло в голове. Читаю: "To use the RichEdit 1.0 control, you need to call ::LoadLibrary("riched32.dll") from WinApp::InitInstance" Ну, думаю, где один, там и второй живёт, короче, реализую... Не тут-то было!!! Всё по старому осталось. И так крутил, и сяк - не растёт кокос... Ладно, думаю, я тебя всё равно победю, и начал уточнять запросы, типа RichEdit 2.0 use, RichEdit 2.0 create и т. д. И вот всякая фигня повываливалась, хоть бы чего полезного... Короче, линке так на сороковом НАШЁЛ: "To use a RichEdit control, you must first call AfxInitRichEdit. In Visual Studio .NET, this function always loads RICHED20.DLL (instead of RICHED32.dll as in Visual C++ 6.0)." Епрст... Вот на пустом месте - столько времени! Кто бы догадался... Конспираторы, блин...
Решил написать программку, работающую с текстом, ну и захотелось мне использовать текст не простой, а форматированный (наконец-то руки дошли до RTF, раньше даже как-то и нужды в нём не было...) И вот, не долго думая, создал я диалог, изгалился чуть-чуть, отрисовав в нём пару кнопочек с эффектом а-ля каустика, полюбовался немного, сказал про себя "ЛЯПОТА!!!" и приступил, наконец, к реализации основной части программы. А по сему воткнул в диалог Rich Edit Control 2.0 с Toolbox'а, и, довольно потирая руки, щёлкнул кнопку run, предвкушая, как вставлю щас какой-нибудь фрагмент из Word'а и полюбуюсь буйством шрифтов, стилей и красок в окне своей программы. Но... Не тут-то было! Аплет попробовал загузиться, но, то ли у него это не очень-то получилось, то ли он просто передумал, в общем, прога тут же закрылась, так и не показав мне плоды моего упорного труда... Чё за на фиг? - подумал я, - неужели я за последние тридцать секунд уже успел косых напороть? Ну прямо новый рекорд получился!!! Поудивлялся немного, собрался с мыслями, и начал жуков искать. Тщетно... Наставил кучу брякпоинтов, оттрасировал всё, что только можно было, каждую строчку кода под дебагером просмотрел - вроде ровно всё, а в итоге резалт в dlg.DoModal() = -1, и всё тут!!! Догадался удалить RichEdit (хорошая мысля приходит опосля :)) - натте вам, зафунциклировало! Навело на очередную мысль... Мысль как-то плавно и медленно перетекла в пальцы, открыла msdn и наклацала на клавиатуре слово RichEdit в поле search. Ага!!! Смотрю первый же топик - RichEdit 1.0 control on MFC он назывался. "Не, ну не совсем то, что надо, ну да фиг с ним, гляну, что там пишут" - промелькнуло в голове. Читаю: "To use the RichEdit 1.0 control, you need to call ::LoadLibrary("riched32.dll") from WinApp::InitInstance" Ну, думаю, где один, там и второй живёт, короче, реализую... Не тут-то было!!! Всё по старому осталось. И так крутил, и сяк - не растёт кокос... Ладно, думаю, я тебя всё равно победю, и начал уточнять запросы, типа RichEdit 2.0 use, RichEdit 2.0 create и т. д. И вот всякая фигня повываливалась, хоть бы чего полезного... Короче, линке так на сороковом НАШЁЛ: "To use a RichEdit control, you must first call AfxInitRichEdit. In Visual Studio .NET, this function always loads RICHED20.DLL (instead of RICHED32.dll as in Visual C++ 6.0)." Епрст... Вот на пустом месте - столько времени! Кто бы догадался... Конспираторы, блин...
Как говорила одна моя девушка - 5 баллов. По таким постам сразу видно - хороший программист. Про это и Алена Голуба написано ( "Веревка достаточной длины что бы выстрелить себе в ногу" ).
:))))