SatDaNTe

Forum Replies Created

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
    Posts
  • in reply to: Memo и SkinSection CHECKBOX #51611
    SatDaNTe
    Participant
    'TCount' wrote:

    Я так понимаю, тебе нужно просто выводить инфу, поэтому подсчитывать количество строк и не нужно, только нужно знать общую высоту контента в пикселях, чтобы определиться с ScrollBar'ом.

    А потом уже, зная высоту контента, настраиваем Scroll:

    SBar.Max:=Content.Height;

    SBar.PageSize:=PBox.Height;

    Здесь:

    Content – это картинка, на которой все прорисовано. Можно прорисовывать и постепенно, но в таком случае нужно все равно знать максимальную высоту всего прокручиваемого.

    Sbar – ScrollBar

    PBox – PaintBox, в котором выводится контент


    Конечно же, чтобы не мигало, нужно при создании формы указать Doublebuffered:=true. Остальные процедуры, думаю, ты без труда напишешь.

    При моей видюхе 128 Mb, проце 1,9 Ггц и размере PaintBox 300×300 все летает))

    P.S. Выводить все добро, конечно же, с помощью WinAPI:

    BitBlt(PBox.Canvas.handle,0,0,PBox.Width,PBox.Height,Content.Canvas.Handle,0,SBar.Position,srccopy);

    и размере PaintBox 300×300 все летает))

    А если текста больше чем 300 по верт.? Я имею ввиду что сколько текста неизвестно, а высоту PaintBox соответственно нужно увеличивать до размера текста,я делал так:

    Code:
    procedure TForm3.PaintBox1Paint(Sender: TObject);
    var
    r:TRect;
    vFormat : TTextFormat;
    vStr : string;
    m:TStringList;
    begin
    m:=TStringList.Create;
    m.LoadFromFile('C:UsersВладимирDesktop1.txt');
    vStr:=m.Text;
    r:=Rect(0,0,sScrollBox1.Width,3000);
    vFormat := [tfEditControl];
    PaintBox1.Canvas.Brush.Style := bsClear;
    PaintBox1.Canvas.TextRect(r,vStr,vFormat);
    PaintBox1.Height:=PaintBox1.Canvas.TextHeight(vStr)*m.Count;
    end;

    но так текст не переносится,а если делать с переносом (vFormat := [tfEditControl,tfWordBreak]) то кол-во строк неизвестно! Может ты мне скинешь пример твоей реализации буду очень признателен!

    in reply to: Memo и SkinSection CHECKBOX #51609
    SatDaNTe
    Participant
    'TCount' wrote:

    Теперь понятно, что имелось ввиду. Я для своего проекта немного уделил временени и слепил свой компонент на основе TsScrollBar+PaintBox. В PaintBox выводится все, что захочу и все это прокручивается. Работает быстрее ListView+фон)

    Если не секрет то как ты подсчитываешь количество строк в PainBoxe, при tfWordBreak?

    in reply to: Memo и SkinSection CHECKBOX #51607
    SatDaNTe
    Participant
    Quote:
    Я также думаю, что «сейчас, так как это” картины выглядит очень красиво тоже! Выглядит очень профессионально! Мне нравится ваши скриншоты Удачи!!

    Спасибо, делаю для себя, смотрится менее читаемо и вообще плохо, потому что я специально выбрал скин чтобы было более наглядно то чего я хочу добиться. Просто в некоторых местах это выглядело бы красивее! И очень бы пригодилось в других случаях, может гуру включит поддержку в 9 версии? Ведь дело не в конкретном случае, а в том что в некоторых случаях это будет очень полезно и современно! Тоже касается и ListView, если это сделать будет просто лучший пакет компонентов(хотя он и сейчас такой))))!

    in reply to: Memo и SkinSection CHECKBOX #51604
    SatDaNTe
    Participant
    'DarrenB' wrote:

    Hello, I am translating this into russian thru Google.

    Я не уверен, что это поможет, но вы видели эту ссылку на StackOverflow? Я сейчас занят, но это выглядит, когда я прочитал, что это может быть полезен?

    http://stackoverflow.com/questions/17014360/vcl-component-opacity-transparence

    Yes I saw it, but not yet used, I thought using AlphaControls as it can make! (Google)

    in reply to: Memo и SkinSection CHECKBOX #51602
    SatDaNTe
    Participant
    Quote:
    С трудом понимаю Вашу технику создания приложений)

    Этим я хотел сказать что я сделал вот так [attachment=6670:2.jpg] с помощью ScrollBara и Labela только запись текста туда очень долгая и глючит при ресайзе!

    Сейчас вот так [attachment=6669:1.jpg], надо чтобы было вот так [attachment=6670:2.jpg]

    in reply to: Memo и SkinSection CHECKBOX #51594
    SatDaNTe
    Participant

    Допустим у скина фон формы картинка, то есть варианты с ParentColor, убрать края (свойство BorderStyle установить в BSnone) не работают, я беру ScrollBox и ложу в него Label(Align=Top, AutoSize=true), всё хорошо только при ресайзе и добавлении текста в реал тайме появляются глюки и долго не прорисовывается текст!

    SatDaNTe
    Participant

    Для sListView: при добавлении в него отключить DoubleBuffered, после включить!

    На счёт ExtendedBorders у меня с ними наоборот все стабильнее и быстрее!

    sGauge: отключить анимацию!

    in reply to: XE5 #50843
    SatDaNTe
    Participant
    'ms301' wrote:

    Как скоро будет поддержка Delphi Xe5?

    +1 тоже очень интересует хоть примерные сроки…

    in reply to: Delphi XE5 #50837
    SatDaNTe
    Participant

    Скоро понятие растяжимое, пожалуйста постарайся побыстрей выложить :blush:

Viewing 9 posts - 1 through 9 (of 9 total)