Как я могу отобразить подсказку, показывающую значение ползунка в WinForms

У меня была похожая проблема, когда шпион прокрутки не работал ни на чем, кроме тега body, поэтому я фактически вошел в начальную загрузку js, нашел раздел Scroll spy (SCROLLSPY CLASS DEFINITION) и изменил эту строку:

, $ element = $ (element) .is ('body')? $ (окно): $ (элемент)

на это:

, $ element = $ (element) .is ('body')? $ (window): $ (window) // $ (element)

(обратите внимание, что элемент после // является комментарием, поэтому я не забываю, что изменил его)

И это исправило это для меня.

5
задан Adam Pierce 21 May 2009 в 11:01
поделиться

2 ответа

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

Вот код инициализации для сравнения

    private void InitializeComponent()
    {
        this.components = new System.ComponentModel.Container();
        this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
        this.trackBar1 = new System.Windows.Forms.TrackBar();
        ((System.ComponentModel.ISupportInitialize)(this.trackBar1)).BeginInit();
        this.SuspendLayout();
        // 
        // trackBar1
        // 
        this.trackBar1.Location = new System.Drawing.Point(12, 166);
        this.trackBar1.Name = "trackBar1";
        this.trackBar1.Size = new System.Drawing.Size(268, 42);
        this.trackBar1.TabIndex = 1;
        this.trackBar1.Scroll += new System.EventHandler(this.trackBar1_Scroll);
        // 
        // Form1
        // 
        this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
        this.ClientSize = new System.Drawing.Size(292, 273);
        this.Controls.Add(this.trackBar1);
        this.Name = "Form1";
        this.Text = "Form1";
        ((System.ComponentModel.ISupportInitialize)(this.trackBar1)).EndInit();
        this.ResumeLayout(false);
        this.PerformLayout();

    }

    private void trackBar1_Scroll(object sender, EventArgs e)
    {
        toolTip1.SetToolTip(trackBar1, trackBar1.Value.ToString());

    }

И он работает, когда я перемещаю тикер для каждого дополнительного приращения ...

12
ответ дан 18 December 2019 в 14:51
поделиться

Как вы инициализировали класс toolTip1? То, как вы устанавливаете текст всплывающей подсказки, выглядит нормально, может быть, вы установили некоторые общие свойства до того, как компонент выполнит свою работу?

MSDN сообщает

// Create the ToolTip and associate with the Form container.
ToolTip toolTip1 = new ToolTip();

// Set up the delays for the ToolTip.
toolTip1.AutoPopDelay = 5000;
toolTip1.InitialDelay = 1000;
toolTip1.ReshowDelay = 500;
// Force the ToolTip text to be displayed whether or not the form is active.
toolTip1.ShowAlways = true;
1
ответ дан 18 December 2019 в 14:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: