Последняя версия DataExpress 3 beta от 22 мая 2018 года. Скачать. Энциклопедия DX. Форум на Develop-Soft

PopupMenu

Вопросы о применении того или иного класса или функции.
jurist23rus
Эксперт
Сообщения: 2147
Зарегистрирован: Пт сен 30, 2016 9:42 am
Откуда: Майкоп

PopupMenu

Сообщение jurist23rus » Чт авг 31, 2017 2:36 pm

Как из штатного контекстного меню убрать разделительные полосы?
Вложения
Скриншот.jpg
Скриншот.jpg (6.91 КБ) 537 просмотров
Destiny is a very convenient word for those who never take decisions.

neitri
Мастер скриптов
Сообщения: 537
Зарегистрирован: Пн фев 13, 2017 5:42 pm

Re: PopupMenu

Сообщение neitri » Чт авг 31, 2017 3:40 pm

Пройтись по всем итемам, у которых каптион - те скрыть
Помогли Тебе. Помоги проекту.
Реквизиты помощи Вы можете найти в окне "О программе"

Аватара пользователя
YurAnt
Эксперт
Сообщения: 3375
Зарегистрирован: Чт апр 13, 2017 8:57 am
Контактная информация:

Re: PopupMenu

Сообщение YurAnt » Чт авг 31, 2017 3:41 pm

Это как? Скроются же тогда все...
Изображение

neitri
Мастер скриптов
Сообщения: 537
Зарегистрирован: Пн фев 13, 2017 5:42 pm

Re: PopupMenu

Сообщение neitri » Чт авг 31, 2017 4:01 pm

У попап меню есть коллекция items
Примерно так

Код: Выделить всё

pm:=grid.popupmenu;
For i:=0 to pm.items.count do
   If pm.items.item[i].caption='-' then
     Pm.items.item[i].visible:=false;
Помогли Тебе. Помоги проекту.
Реквизиты помощи Вы можете найти в окне "О программе"

Аватара пользователя
YurAnt
Эксперт
Сообщения: 3375
Зарегистрирован: Чт апр 13, 2017 8:57 am
Контактная информация:

Re: PopupMenu

Сообщение YurAnt » Чт авг 31, 2017 4:17 pm

begin
Странно. Тыкал без цыкла по индексам напрямую - почему-то не нащупывало '-'
Щас проверил - работает обоими способами;

Код: Выделить всё

pm:=dxquerygrid1.popupmenu;
For i:=0 to pm.items.count-1 do
   If pm.items[i].caption='-' then
   begin
    Pm.items[i].visible:=false;
    //debug(i);
    end; 

end;
Изображение

Аватара пользователя
YurAnt
Эксперт
Сообщения: 3375
Зарегистрирован: Чт апр 13, 2017 8:57 am
Контактная информация:

Re: PopupMenu

Сообщение YurAnt » Чт авг 31, 2017 4:17 pm

чертово программирование... уже тут проскакивает...
Изображение

KoalaBear
Интересующийся
Сообщения: 171
Зарегистрирован: Сб сен 02, 2017 5:05 pm

Re: PopupMenu

Сообщение KoalaBear » Пт дек 08, 2017 10:09 pm

Подскажите, пожалуйста! Этот код работает:

Код: Выделить всё

procedure Form_Create;
begin
  dxQueryGrid1.PopupMenu.Items[0].Visible:=false; 
end;

а этот код не хочет:

Код: Выделить всё

procedure Form_Create;
begin
  dxQueryGrid1.PopupMenu.Items[0].Enabled:=false;
end;

Неправильно пишу?

Аватара пользователя
YurAnt
Эксперт
Сообщения: 3375
Зарегистрирован: Чт апр 13, 2017 8:57 am
Контактная информация:

Re: PopupMenu

Сообщение YurAnt » Пт дек 08, 2017 10:24 pm

Код: Выделить всё

procedure AfterScroll(Sender: TObject);
begin
dxQueryGrid1.PopupMenu.Items[0].Enabled:=false;
end;

procedure Form_Create;
begin
  dxQueryGrid1.OnAfterScroll:=@AfterScroll;
end;     

KoalaBear
Интересующийся
Сообщения: 171
Зарегистрирован: Сб сен 02, 2017 5:05 pm

Re: PopupMenu

Сообщение KoalaBear » Пт дек 08, 2017 10:36 pm

Спасибо!

KoalaBear
Интересующийся
Сообщения: 171
Зарегистрирован: Сб сен 02, 2017 5:05 pm

Re: PopupMenu

Сообщение KoalaBear » Сб дек 09, 2017 12:43 am

Прошу прощения, что не совсем по теме. Подскажите, пожалуйста, как сделать ещё то же самое с кнопкой "+" у запроса? Как скрыть и как сделать неактивной?


Вернуться в «Вопросы по API DataExpress.»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость