Карта сайтаСсылкиКонтакты

Улучшение StatusBar

PDF Печать
Статьи

В некоторые времена использование StatusBar являлось затруднительным при использовании двух и более панелей...

Вы можете поместить эту процедуру в отдельный модуль (goodys.pas в этом примере)


Procedure SetStatusBar(Var StB:TStatusBar; 
    Strs:Array Of String);
Var
  X:Byte;
Begin
  For X:=Low(Strs) To High(Strs) Do
    If Not (Strs[X] = '') Then
      StB.Panels[X].Text:= Strs[X];
  Application.ProcessMessages
End;

Затем включите этот модуль в модуль Вашей формы


Implementation

Uses goodys;

и всякий раз, когда нужно обновить панель состояния, вызывать


SetStatusBar(MyStatusBar, ['panel', '', 'другая панель'])

независимо от того, сколько панелей имеет строка состояния, Вы можете использовать одну процедуру:


SetStatusBar(MyStatusBar, ['обновить мою первую панель'])

Примечания: - для очистки панели, делайте вызов с пробелом:


SetStatusBar(MyStatus, ['панель 2 должна быть пуста', ' ']) 

- и удостоверьтесь, что у Вас имеется хотя бы одна панель в строке состояния, а свойство simplepanel - False

По материалам http://delphi.3000.com


 

Добавить комментарий


Защитный код
Обновить