Конференция "KOL" » проблема с KOLMHTrackBar
 
  • митя (15.11.15 11:06) [0]
    Вобщем создаю проект, кидаю на форму тракбар, компилирую - всё ок.
    При повторном открытии проекта выдаёт ошибку " Exeption in module MirrorKolPackageD7.bpl at 006ca0b "  и дизайнер формы не открывается - т.е. дальнейшее визуальное редактирование формы не возможно.
    Пожалуйста помогите разобраться
  • QAZ (15.11.15 12:10) [1]
    используй обычный из KOLCCtrls
  • RusSun © (15.11.15 16:05) [2]
    program Trackbar;

    uses KOL, KOLCCtrls;

    procedure TrackbarChange(Dummy: Pointer; Sender: PTrackbar; Code: Integer);
    begin
    Applet.Caption := Int2Str(Sender.Position);
    end;

    begin
    Applet := NewForm(nil,'Trackbar');
    NewTrackbar(Applet,[],TOnScroll(MakeMethod(nil,@TrackbarChange))).ResizeParent;
    Run(Applet);
    end.

  • Graltmax (26.01.16 16:11) [3]
    Столкнулся с проблемой...
    Код приведенный RusSun вполне рабочий, но я не могу понять, как именно задать начальное положение "бегунка" и диапазон значений Min и Мах. Допустим, имеется TrackBar работающий в диапазоне от 0 до 10, причем, при старте формы "бегунок" должен находиться в положении 5 (посредине в общем :).

    Я сделал следующее:

    uses KOL, KOLCCtrls;
    var W:PControl;
       TrackBar1: TKOLTrackBar;
    {----------------------------------------------------------------------------}
    Procedure TrackBar1Scroll(Dummy: Pointer; Sender: PTrackbar; Code: Integer);
    begin
        W.Caption := Int2Str( TrackBar1.Position );
    end;
    {----------------------------------------------------------------------------}
    BEGIN
        W := NewForm( Applet, 'MiWin' ).SetSize( 400, 300 );
        W.CenterOnParent;

        TrackBar1 := PTrackbar(NewTrackBar( W, [trbAutoTicks,trbNoBorder,trbTooltips],
                     TOnScroll( MakeMethod( nil, @TrackBar1Scroll)))
                     .SetPosition( 100, 100 )
                     .SetSize( 200, 30 ));

        TrackBar1.RangeMax := 10;
        TrackBar1.Position := 5;

        Run( W );
    END.


    При этом и диапазон от 0 до 10 выставился корректно и "бегунок" находится в положении  5. Но заголовок формы НЕ МЕНЯЕТСЯ при перемещении "бегунка"!
    Что я делаю не так?
  • RusSun © (26.01.16 16:59) [4]
    TrackBar1.Perform( WM_SETFOCUS, 0, 0);

  • RusSun © (26.01.16 17:02) [5]
    uses KOL, KOLCCtrls,messages;
  • Grademax (26.01.16 17:32) [6]
    Руслан, Спасибо!
    Но нет, не помогло :(
    Куда копать дальше - пока не знаю... :)
  • RusSun © (26.01.16 19:27) [7]
    program Project1;
    uses KOL, KOLCCtrls,messages;
    var W:PControl;
       TrackBar1: TKOLTrackBar;
    {----------------------------------------------------------------------------}
    Procedure TrackBar1Scroll(Dummy: Pointer; Sender: PTrackbar; Code: Integer);
    begin
        W.Caption := Int2Str( TrackBar1.Position );
    end;
    {----------------------------------------------------------------------------}
    BEGIN
        W := NewForm( Applet, 'MiWin' ).SetSize( 400, 300 );
        W.CenterOnParent;

        TrackBar1 := PTrackbar(NewTrackBar( W, [trbAutoTicks,trbNoBorder,trbTooltips],
                     TOnScroll( MakeMethod( nil, @TrackBar1Scroll)))
                     .SetPosition( 100, 100 )
                     .SetSize( 200, 30 ));

        TrackBar1.RangeMax := 10;
        TrackBar1.Position := 5;
         TrackBar1.Perform( WM_SETFOCUS, 0, 0);
        Run( W );
    END.



    крутим колесо мыши)
  • RusSun © (26.01.16 19:32) [8]
  • RusSun © (26.01.16 19:36) [9]
    Когда создаётся окно Ты ещё ничего не делаешь с бегунком  KOLMHTrackBar'а
    поэтому ничего ине происходит в этом начальном событии, но стоит двинуть бегунок и всё робит.
  • Grademax (27.01.16 05:26) [10]
    Хм... Действительно, всё заработало.
    Руслан, спасибо!
 
Конференция "KOL" » проблема с KOLMHTrackBar
Есть новые Нет новых   [118648   +59][b:0][p:0.002]