Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Панель инструментов

397
07 августа 2007 года
SergPas
527 / / 03.02.2007
Есть панель инструментов с кнопками и поясняющими надписями к ним...
Вопрос: Как можно удалить надписи при выборе соответствующего пункта меню и как заново отобразить?
Удалить надписи не составит труда:
Код:
for i:=0 to 8 do begin
           tbbi.cbSize:=SizeOf(TBBUTTONINFO);
           tbbi.fsState:=TBSTATE_ENABLED;
           tbbi.fsStyle:=TBSTYLE_BUTTON;
           tbbi.iImage:=i;
           tbbi.pszText:=#0;
           tbbi.dwMask:=TBIF_COMMAND or TBIF_STATE or TBIF_STYLE or TBIF_TEXT;
           end;

.....

for i:=0 to 8 do
SendMessage(ToolBar, TB_SETBUTTONINFO, IDcommand,  longint(@tbbi));

где IDcommand- целочисленный массив идентификаторов кнопок.
После удаления надписей кнопки необходимо уменьшить. Для этого использую следующее сообщение:
 
Код:
SendMessage(ToolBar, TB_SETBUTTONSIZE, 0, MakeLong(16,16));

Но попытки опять "подписать" кнопки завершаются неудачей. При этом использую следующий код:
Код:
Var tbbi:array[0..8] of TBBUTTONINFO;

[CENTER].....[/CENTER]

for i:=0 to 8 do begin
           tbbi.cbSize:=SizeOf(TBBUTTONINFO);
           tbbi.fsState:=TBSTATE_ENABLED;
           tbbi.fsStyle:=TBSTYLE_BUTTON;
           tbbi.iImage:=i;
           tbbi.pszText:=PAnsiChar(str);

           tbbi.dwMask:=TBIF_COMMAND or TBIF_STATE or TBIF_STYLE or TBIF_TEXT or TBIF_SIZE;
           end;
for i:=0 to 8 do begin
tbbi.pszText:=PAnsiChar(str);
SendMessage(ToolBar, TB_SETBUTTONINFO, IDcommand, longint(@tbbi));
end;

где str-массив "подписей к кнопкам".
Тут, конечно, бесполезно посылать сообщение
 
Код:
SendMessage(ToolBar, TB_ADDSTRING, 0,longint(@str))

так изначально я "подписываю" кнопки, а как известно при таком способе "подписи" строка добавляется в конец внутреннего списка...
Вообщем, как быть?
17K
07 августа 2007 года
vagran
25 / / 11.11.2006
Возможно, стоит удалять все кнопки и создавать их заново с нужными атрибутами.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог