Форум: "KOL";
Текущий архив: 2004.01.20;
Скачать: [xml.tar.bz2];
ВнизTKolRichEdit и TKolListBox Найти похожие ветки
← →
Юрий (2003-05-04 18:43) [0]Кто использовал TKolRichEdit? Каким образом загрузить файл?
LoadFromFile прописан для TStrList, а такого свойства у TKolRichEdit вроде нет.
У TKolListBox событие OnClick происходит только после двойного клика, хотя вижу, что это контрол обладает и событием OnMouseDblClick.
Что сделать, чтобы отрабатывался код после одного клика?
Следующий код не работает (Runtime Error) после двойного клика.
procedure TSearchForm.KolListBox1Click(Sender: PObj);
var sl: TStrList;
begin
// В KolListBox1 - список имён файлов
if (KolListBox1.CurIndex < 0) then exit;
s := lRecs.Items[lRecs.CurIndex];
sl.LoadFromFile(s);
KolRichEdit1.Text := sl.Text;
end;
← →
Юрий (2003-05-04 18:49) [1]Поправка в код (не полностью сменил имена контролов):
procedure TForm1.KolListBox1Click(Sender: PObj);
var sl: TStrList; s: String;
begin
if (KolListBox1.CurIndex < 0) then exit;
s := KolListBox1.Items[KolListBox1.CurIndex];
sl.LoadFromFile(s);
KolRichEdit1.Text := sl.Text;
end;
← →
Nix (2003-05-04 18:59) [2]
REdit.RE_LoadFromFile(Dialog.Filename,reText,false)
REdit.RE_SaveToFile(Dialog.Filename,reText,false);
← →
Юрий (2003-05-04 19:37) [3]Совершенно не могу поменять ширину фонта у TKolRichEdit, какую цифру не ставлю в FontHeight, результат тот же, хотя загружен обычный текстовый файл.
← →
Gandalf (2003-05-05 13:53) [4]Работает:
RichEdit2.RE_CharFmtArea:=raAll;
RichEdit2.RE_FmtFontSize:=720;
← →
Юрий (2003-05-05 14:49) [5]Для чего же в "Object Inspector" свойство FontHeight помещён, если изменение этого свойства никак не влияет? Это баг?
← →
Юрий (2003-05-05 14:57) [6]У TKolListBox событие OnClick кто-нибудь использовал? Срабатывает при двойном клике оно или при одинарном? У меня при двойном клике отрабатывает код. Чем же отличается это событие от OnMouseDblClick?
← →
Gandalf (2003-05-05 15:10) [7]
> Для чего же в "Object Inspector" свойство FontHeight помещён,
> если изменение этого свойства никак не влияет? Это баг?
Влияет, да и лень убирать (он есть у предка).
> У TKolListBox событие OnClick кто-нибудь использовал? Срабатывает
> при двойном клике оно или при одинарном? У меня при двойном
> клике отрабатывает код. Чем же отличается это событие от
> OnMouseDblClick?
Оба срабатывают при двойном клике - причем DblClick раньше, чем OnClick. Это не баг - это API.
← →
Юрий (2003-05-05 15:24) [8]
В "Object Inspector" RichEdit2.Font.FontHeight := 0;
RichEdit2.RE_LoadFromFile(lRecs.Items[lRecs.CurIndex], reText, False);
while (true) do begin
RichEdit2.Font.FontHeight := RichEdit2.Font.FontHeight+1;
( Int2Str(RichEdit2.Font.FontHeight) [8]
В "Object Inspector" RichEdit2.Font.FontHeight := 0;
RichEdit2.RE_LoadFromFile(lRecs.Items[lRecs.CurIndex], reText, False);
while (true) do begin
RichEdit2.Font.FontHeight := RichEdit2.Font.FontHeight+1;
MsgBox(Int2Str(RichEdit2.Font.FontHeight), 0);
end;
Этот код действительно меняет фонт, без него загруженный текст показывается с фонтом, который по умолчанию стоит, какой FontHeight в "Object Inspector" не ставлю.
В чём дело? Похоже это баг.
← →
Юрий (2003-05-05 15:26) [9]"Оба срабатывают при двойном клике - причем DblClick раньше, чем OnClick. Это не баг - это API."
А как же в VCL сделали, чтобы при одинарном клике событие срабатывало? Не лучше ли, чтобы было как в VCL?
← →
Юрий (2003-05-06 14:27) [10]"Оба срабатывают при двойном клике - причем DblClick раньше, чем OnClick. Это не баг - это API."
Следующий код на VBasic также срабатывает при одинарном клике, так при чём же здесь API в таком случае?
Private Sub ListBox1_Click()
Dim ...
...
End Sub
Почему в VCL и VBasic событие Click срабатывает при одинарном клике, а в KOL это требует двойного клика?
← →
default (2003-05-06 14:32) [11]а то в исходнике Click-а посмотри
← →
Юрий (2003-05-06 18:05) [12]default:
"а то в исходнике Click-а посмотри"
Времени не столь много, чтобы по исходникам разбираться. Коли КОЛ запускается из Дельфи, то всё-таки ожидаешь от Контролов такого же поведения как и в VCL, а оказывается, что кое-что сильно разнится.
Кстати Button.OnClick требует одинарного клика, почему же у ListBox.OnClick должно быть иначе?
← →
Gandalf (2003-05-06 22:07) [13]Кладов посчитал, что для ListBox - Click и DblClick - это одно и тоже - и назначил, на них одно событаи - вотрое эквивалентно VCL.DblClick. При этом эквивалентом (послным это одно и тоже) VCL.Click - является, в случаи ListBox, SelChange.
> Времени не столь много, чтобы по исходникам разбираться.
> Коли КОЛ запускается из Дельфи, то всё-таки ожидаешь от
> Контролов такого же поведения как и в VCL, а оказывается,
> что кое-что сильно разнится.
Так старался делать я в своих компонентах, но дело в том, что VCL удобно, но не оптимально и в KOL порой жертвую удобством во имя оптимальности - потому возникают различия (KOL ближе к API).
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2004.01.20;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.009 c