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

Вниз

Немигающая каретка: возможно ли это?   Найти похожие ветки 

 
lookin ©   (2005-09-10 19:39) [0]

Сабж...


 
Virgo_Style ©   (2005-09-10 20:08) [1]

Насколько я понимаю, после SetCaretBlinkTime(MaxInt); она не погаснет 24 дня. Этого мало? %-)


 
lookin ©   (2005-09-10 20:16) [2]

[1] Virgo_Style ©   (10.09.05 20:08)

Ну, насколько я понял, SetCaretPos сбрасывает состояние каретки на обратное.


 
Virgo_Style ©   (2005-09-10 20:34) [3]

lookin ©   (10.09.05 20:16) [2]

Хм... Это было бы неприятно :-) А откуда это следует? Я ничего такого не нашел, и эксперимент вроде ничего такого не выявляет...


 
lookin ©   (2005-09-10 20:53) [4]

[3] Virgo_Style ©   (10.09.05 20:34)

Эх, у меня выявляет... Т.е. я так считаю, судя по видимому...


 
Zeqfreed ©   (2005-09-10 21:09) [5]

lookin ©   (10.09.05 20:53) [4]
Virgo_Style ©   (10.09.05 20:34) [3]
Коды в студию, для сравнения :)


 
lookin ©   (2005-09-10 21:17) [6]

[5] Zeqfreed ©   (10.09.05 21:09)

Например, если это что-то объяснит:

//создание каретки
procedure TMacro.PaintCaret;
begin
 if CreateCaret(Window.Handle,0,2,Step.y) then begin
 ShowCaret(Window.Handle);
 SetCaretPos(LeftMargin,0);
 SetCaretBlinkTime(300000);
 end;
end;

//сдвиг каретки при вводе символа
procedure TMacro.WindowKeyPress(Sender: TObject; var Key: Char);
begin
 GetCaretPos(p);
 ...вычисляется новое значение p
 SetCaretPos(p.x,p.y);
end;


 
Virgo_Style ©   (2005-09-10 21:37) [7]

Практически весь мой код содержится в [1] %-)
Еще поставил SetCaretPos в Memo.OnChange, вот и все.

Может, я чего неправильно делаю, потому и работает? :o)


 
lookin ©   (2005-09-10 21:39) [8]

[7] Virgo_Style ©   (10.09.05 21:37)

Может я чего-то не так делаю?


 
lookin ©   (2005-09-10 21:41) [9]

[7] Virgo_Style ©   (10.09.05 21:37)

Что любопытно - в моем окошке каретка исчезает после ввода символа, хотя в дельфях - остается.... Почему бы это?


 
Virgo_Style ©   (2005-09-10 22:13) [10]

Хм, получил похожий эффект.

procedure TForm1.Memo1Change(Sender: TObject);
var p:TPoint;
begin
 GetCaretPos(p);
 SetCaretPos(p.x-10,p.y);
end;


При вводе символа в тот момент, когда каретка в начале строки, она стала исчезать (что, в принципе, логично).
При вычислении координаты каретки она точно не выходит за пределы поля ввода?


 
lookin ©   (2005-09-10 22:15) [11]

[10] Virgo_Style ©   (10.09.05 22:13)
>>При вычислении координаты каретки она точно не выходит за пределы поля ввода?

Абсолютно, она может оказаться вне поля зрения, но всегда в поле ввода...

Вообще у меня даже все проще, при наборе текста в видимой области каретка мигает (или исчезает, при миллисекундах оченна больших), но появляется в точности там, где надо...


 
Virgo_Style ©   (2005-09-10 22:34) [12]

lookin ©   (10.09.05 22:15) [11]

То есть, если не пытаться сделать ее немигающей, то она мигает, но видна как раз-таки все то время, когда и где должна быть?
Хм... Странно...


 
lookin ©   (2005-09-10 23:13) [13]

[12] Virgo_Style ©   (10.09.05 22:34)
>>То есть, если не пытаться сделать ее немигающей, то она мигает, но видна
>>как раз-таки все то время, когда и где должна быть?

Как раз если сделать ее "немигающей" путем [1], то она просто исчезает при вводе любого символа, хотя дол ввода остается немигающей



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

Форум: "Основная";
Текущий архив: 2005.10.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.004 c
1-1126683715
vladimirov
2005-09-14 11:41
2005.10.02
испанские символы


1-1125948823
Zuser
2005-09-05 23:33
2005.10.02
Вопрос про потоки


1-1126370669
Still Swamp
2005-09-10 20:44
2005.10.02
Как пояснить Excel что мне не надо сохранять файл?


1-1126100942
Суслик
2005-09-07 17:49
2005.10.02
Проблемы с формой из runtime-пакета


1-1126332121
Геннадий
2005-09-10 10:02
2005.10.02
Отладка модуля проекта, входящего в группу проектов





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