Member
Статус: Не в сети Регистрация: 21.01.2004 Откуда: ядерная помойка
Максим писал(а):
НУ потому, потому что конечно оригинально, но через пятую точку все. Плюс органичность интерфейса никакая получается.
Ты же сам хотел, чтоб 3 кнопки всплывали. Или нужно чтоб они всплывали именно на том же тулбаре рядом с екущей кнопкой? Ну тогда что мешает их поместить при событии mousehover рядом с текущей кнопкой? Правда, гуляющие на тулбаре кнопки - это та ещё "органичность" :laugh:
Использовать компонент типа TBitBtn. Тут два варианта, либо исользуешь картинку с нужной тебе надписью слева, либо пишешь нужную надпись в Caption, в Glypt аттачишь пустышку(картинку размером 1х1, серого цвета), в Layout ставишь blGlyphRight и Spacing выравниваешь как надо
Layout - расположение картинки относительно текста
Spacing - расстояние от картинки до текста в пикселах
Member
Статус: Не в сети Регистрация: 05.01.2003 Откуда: Москва Фото: 2
Mike3000
Цитата:
Код: FCanvas.Brush.Color := OldColor;
это зачем?
Сначала там поставил fillrect, а потом решил отдать отрисовку этой части самому родительскому компоненту.
А по поводу того, что не ищу легких путей - гм, возможно и так, зато написал и все работает, причем достаточно быстро и точно в итоге лучше получилось, чем если бы хотел tbitbtn использовать. Тем паче все равно из-за других возможностей просто пришлось писать компонент, и почему бы тогда самому не написать рисование текста???
_________________ Устав традиций нужно соблюдать, Хоть и не раз ответят вам отказом: Конечно, баба может и не дать, Но предложить ты ей всегда обязан!
Member
Статус: Не в сети Регистрация: 07.10.2003 Откуда: Russia, Moscow
Спустя лет 5 (или 6) пришлось снова добраться до дельфей.
в richedit надо проматывать скролл к нужной точке. Строчку я выделяю, но строки к ней не проматываются.
найденный в гугле способ посылать ему сообщение (не помню, дома гляну, что-то про каретку), скролл не проматывает.
_________________ В поиске включайте "Искать все слова". Избегайте многоточий.
Зачем нужен разгон? http://tsc.overclockers.ru
Member
Статус: Не в сети Регистрация: 21.01.2004 Откуда: ядерная помойка
armadillo в .net есть функция ScrollToCaret(), думаю, что здесь тоже должно быть что-то вроде этого, и ещё что-то совершенно точно есть способ через функцию winAPI
Помогите Пожалуйста кто знает.
Я экспортировал из реестра в файл zum.reg ключ, но не могу занести строки из него в RichEdit, выдаёт пару символов и кучу пустых строк. Я так понимаю всё дело в кодировке, так как похоже что полученный reg файл в Unicode, но как это добро перекодировать в понятный для RichEdit формат. Если можно, то напишите пример. Заранее спасибо. Я собственно пытался прочитать полученыый reg файл способом написанным ниже, но увы ничего не выходит.
Код:
procedure TForm1.Button1Click(Sender: TObject); Var f: TextFile; s: WideString; Begin AssignFile(F, 'zum.reg'); Reset(F); While not Eof(F) Do Begin ReadLn(F, s); RichEdit1.Lines.Add(AnsiString(s)); End; closefile(f); end;
inndim используй WideString вместо AnsiString (если дело действительно в этом)
Не помогает, s я и так объявил как WideString, пробовал без AnsiString, результат один и тот же. Дело в том что zum.reg который я экспортировал из regedit это обычный текстовой файл, но в кодировке unicode, а RichEdit его не понимает. Сейчас нашёл функцию WideCharToString и переделал код, но опять не помогает, заносит пустые строки, как же быть-то?
Код:
procedure TForm1.Button1Click(Sender: TObject); Var f: TextFile; s: WideString; Begin AssignFile(F, 'zum.reg'); Reset(F); While not Eof(F) Do Begin ReadLn(F, s); richedit1.Lines.Add(WideCharToString(PWideChar(s))); End; closefile(f); end;
проблема в том, что findtext и get|setscrollpos оперируют разным размером.
максимально возможный скролл в данном тексте 2617, length(text) - 8к c чем-то.
поставил такой костыль, но это бред.
_________________ В поиске включайте "Искать все слова". Избегайте многоточий.
Зачем нужен разгон? http://tsc.overclockers.ru
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения