Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Мастера DELPHI. Новости мира компонент, FAQ, статьи...


Информационный Канал Subscribe.Ru

Ежедневная рассылка сайта Мастера DELPHI

DELPHIMASTER.ru

Выпуск от 10.05.04 09:05

Лучшее из нашего FAQ   |x|
Кто-нибудь знает, как "отучить" RichEdit самопpоизвольно пеpеключать pаскладку клавиатуpы пpи пеpеходе с pусского на английский текст?
Александp   (24.04.01 16:15)

Кто-нибудь знает, как "отучить" RichEdit самопpоизвольно пеpеключать pаскладку клавиатуpы пpи пеpеходе с pусского на английский текст?
EM_SETLANGOPTIONS (WM_USER+120) почему-то не помогает!




LOM   (24.04.01 19:59)

Вот это было ФАКе Озерова:
---------------------------------------
Максим Гуменюк пишет:
Самое главное, что мне не нравится в Richedit - это то, что он сам меняет язык при перемещении по
тексту, не смотря, что вы включили нужный язык, при переходе на участок текста, набраный другим
языком.

этот баг я обхожу так.

я создаю потомка Richedit:
меню Component\New Component
указываю предком TRichedit
Переписаю обработку события WM_ INPUTLANGCHANGE, при этом я не вызываю обработчик предка, т.е.
Richedit-а
Заодно обрабатываю событие WM_INPUTLANGCHANGEREQUEST, которое сообщает, что пользователь изменил
язык. Тут надо вызвать обработчик предка, а то не будет переключаться язык.
Вот что из этого получилось. Имеем исправленный компонент VCL с дополнительным событием.


unit RichEditEx;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls;

type
TLangChangeEvent=procedure(Sender:TObject;Lang:HKL) of object;


TRichEditEx = class(TRichEdit)
private
FOnLangChange:TLangChangeEvent;
procedure WMLangRequest(var M:TMessage);message WM_INPUTLANGCHANGEREQUEST;
procedure WMLangChange(var M:TMessage);message WM_INPUTLANGCHANGE;

{ Private declarations }
protected
{ Protected declarations }
public
{ Public declarations }
published
property OnL! angChang e:TLangChangeEvent read FOnLangChange write FOnLangChange;

{ Published declarations }
end;

procedure Register;

implementation


procedure tricheditex.WMLangRequest(var M:TMessage);
begin
if assigned(FOnLangChange) then FOnLangChange(self,m.LParam);
inherited;end;

procedure tricheditex.WMLangChange(var M:TMessage);
begin m.Result:=1;end;

procedure Register;
begin

RegisterComponents('Samples', [TRichEditEx]);
end;

end.  

Максим Гуменюк, max1gu@fiberia.com


---
Из конференции сайта МАСТЕРА DELPHI (delphi.mastak.ru)

»»» Прислать свои комментарии

Обсуждается в конференциях   |x|
У нас большой выбор статей   |x|
Создание компонентов в Run-Time.
Итак, рассмотрим на первый взгляд сложный вопрос о создании компонентов в Run_time (то есть во время работы программы). Но на самом деле этот вопрос довольно просто решается.
Давайте вместе попробуем написать код, чтобы при нажатии на кнопку на  форме появлялось ...
Новинки книжного рынка   |x|
Теория и практика построения баз данных. 8-е изд.
В книге, написанной в форме учебного пособия для студентов, специализирующихся в области информационных технологий, освещается широкий круг теоретических и практических вопросов, связанных с разработкой и использованием баз данных. К особенностям восьмого издания книги относится, в частности, появление материала, посвященного новым технологиям публикации баз данных (XML) и обработки баз данных масштаба предприятия (ODBC, ASP, JDBC, JSP). Книгу отличает продуманность структуры, живой и доступный язык изложения, а также большое количество примеров, моделирующих типичные ситуации из практики делового мира.
Автор: Крёнке Д.
Другие сайты о DELPHI   |x|
VoidSoft
Свежие новости мира Borland (и не только), авторские программы, статьи, компоненты, ссылки. Если у Вас есть вопросы по программированию - добро пожаловать на наш форум
"Дельфинарий". Вы также ...

» Оценка сайта: 4
Опрос населения :)
Стоит ли устраивать встречи программистов в реале? (пирушки :)
»»» Обязательно!
»»» Иногда можно
»»» Я туда не пойду
»»» Категорически нет
Для души

Хокку дня
«марр-р-рт!» —
ее кошка трется о ножки
каждого встречного стула

Афоризмы
Процитирую великого современного русского художника Игоря Фомина: «Про человека, заказывающего себе чашку кофе без кофеина с обезжиренным молоком и сахарином, можно с уверенностью сказать - его жизнь не удалась.....»

Фраза дня
Есть идеальные тела и идеальные лица. Нет идеальных сердец.

Дурацкие законы (информация предоставлена сайтом kurilka.com)
В городе Блит в Калифорнии (США) вы можете носить ковбойские сапоги только в том случае, если у вас есть не менее двух коров.
В городе Барлингейм (США) в том же штате запрещено плеваться - если только вы не на бейсбольном стадионе во время матча.

И на закуску коротенький анекдот
Армянское радио спрашивают:
- Можно ли принимать женщин в компьютерный клуб?
- Можно. Если женщина не боится мышей и не краснеет от слова "АВОRТ".

Фотоприколы.
Начните день с хорошего настроения!
http://www.delphimaster.ru/cgi-bin/prikol.pl?id=434


На этом позвольте откланяться и пожелать вам удачного дня.
Искренне ваш, Алексей (merlin@delphimaster.ru)

Добро пожаловать на сайт -= Мастера DELPHI =- 


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу


В избранное