Вниз
Скачать: CL | DM;

Проблема выделения текста в RichEdit   Найти похожие ветки 

← →
@LeX-I ©   (2006-05-18 20:02) [0]

Код:
       RichEdit.Text:=RichEdit.Text + "А" + #13#10;
       RichEdit.Text:=RichEdit.Text + "Б" + #13#10;
       richEdit.SelStart:=3;
       richEdit.SelLength:=1;
       richedit.SelAttributes.Style:= [fsBold];
       RichEdit.Text:=RichEdit.Text + "В";

Если убрать последнюю строчку, что буква Б будет жирной, иначе - почему-то нет.


← →
TStas ©   (2006-05-18 22:49) [1]

Потому что текст меняется в этой же процедуре


← →
@LeX-I ©   (2006-05-18 23:00) [2]

Что-то не совсем понятно. Поясните, пожалуйста.


← →
webpauk   (2006-05-19 10:10) [3]


> RichEdit.Text:=RichEdit.Text + "В"

последней строчкой ты переписываешь весь Text и к ней применяются SelAttributes по умолчанию


← →
webpauk   (2006-05-19 10:12) [4]

RichEdit1.Lines.Add("В");


← →
@LeX-I ©   (2006-05-19 10:55) [5]

Дело в том, что при очень длинных строках ADD вылетает


← →
webpauk   (2006-05-19 10:58) [6]

RichEdit1.selstart:=Richedit1.RichEdit.Perform(EM_LINEINDEX, LineNumber, 0) + CharNumber;
RichEdit1.PasteFromClipBoard;
предварительно записав туда чего те надо
LineNumber - номер строки, CharNumber - номер символа в строке


← →
webpauk   (2006-05-19 11:01) [7]

function GetStringFromClipboard: WideString;
var
 Data: THandle;
begin
 if not IsClipboardFormatAvailable(CF_UNICODETEXT) then
   Result:=Clipboard.AsText
 else
 begin
   Clipboard.Open;
   Data := GetClipboardData(CF_UNICODETEXT);
   try
     if Data <> 0 then
       Result := PWideChar(GlobalLock(Data))
     else
       Result := "";
   finally
     if Data <> 0 then GlobalUnlock(Data);
     Clipboard.Close;
   end;
 end;
end;

procedure PutStringIntoClipBoard(const Str: WideString);
var
 Size: Integer;
 Data: THandle;
 DataPtr: Pointer;
begin
 Size := Length(Str);
 if Size = 0 then
   exit;
 if not IsClipboardFormatAvailable(CF_UNICODETEXT) then
   Clipboard.AsText := Str
 else
 begin
   Size := Size shl 1 + 2;
   Data := GlobalAlloc(GMEM_MOVEABLE + GMEM_DDESHARE, Size);
   try
     DataPtr := GlobalLock(Data);
     try
       Move(Pointer(Str)^, DataPtr^, Size);
       Clipboard.SetAsHandle(CF_UNICODETEXT, Data);
     finally
       GlobalUnlock(Data);
     end;
   except
     GlobalFree(Data);
     raise;
   end;
 end;
end;



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.023 c
15-1148882161
MsGuns
2006-05-29 09:56
2006.06.25
Трудная победа Шараповой.


5-1133421374
vladmk
2005-12-01 10:16
2006.06.25
Создание компонента


2-1149511088
$Cursor
2006-06-05 16:38
2006.06.25
Собственный курсор из ресурса


3-1146031721
{Set}
2006-04-26 10:08
2006.06.25
Ошибка при подключении Таблици InterBase


15-1149059299
boriskb
2006-05-31 11:08
2006.06.25
Студенты, вас еще не напрягают?




   Наверх