2010-09-26 1 views
0

У меня есть две перспективы, но чтобы увидеть вторую перспективу, как вы знаете, нужно нажать кнопку «открыть перспективу». Есть ли способ, которым вторая кнопка перспективы отображается автоматически, когда приложение запускается?Как показать кнопку перспективы без щелчка?

ответ

0

Похоже, вы хотите, чтобы размер переключателя перспективы (панель с кнопками перспективы) по умолчанию был больше обычного. Для этого вы, возможно, можете использовать экземпляр класса ActionBarAdvisor; вам, вероятно, также понадобится класс WorkbenchWindowAdvisor.

Я не вижу никаких методов прямого доступа к объекту коммутатора, поэтому, я думаю, вам придется посмотреть на дерево компонентов, чтобы найти его.

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

+0

Я решил это с вашей помощью. Большое спасибо :), я пришел после дерева управления и нашел CBanner, составляющий панель Perspective, и я меняю его. – tom

+0

@Tom Отлично! Было бы неплохо, если бы вы приняли мой ответ, нажав кнопку галочки. – Ladlestein

0

Перспективы отображаются на вкладке. Хотя это не ясно, просто взглянув на нее, конец вкладки можно перетащить, чтобы она была длиннее и могла отображать более перспективные кнопки.

+0

ах, извините, что я хочу, программируя вызов второй перспективы, не используя мой палец – tom

0

Щелкните правой кнопкой мыши на панели инструментов перспективы, затем выберите док-станцию ​​слева или слева вверху. Вы увидите больше элементов панели инструментов другой перспективы и покажете больше на панели инструментов.

2

Это старая тема, но я подумал, что предлагаю более конкретный ответ, так как принятый не является самым прямым в решении.

В вашем методе ApplicationWorkbenchWindowAdvisor.preWindowOpen() используйте приведенный ниже код, чтобы добавить перспективы в перспективный переключатель.

// Get a reference to the preferences store 
IPreferenceStore prefStore = PlatformUI.getPreferenceStore(); 

// Set the value for the perspective bar preference. Insert your own 
// perspective id values. 
prefStore.setValue(IWorkbenchPreferenceConstants.PERSPECTIVE_BAR_EXTRAS, "project.perspective.id.1, project.perspective.id.2,..."); 

Есть ряд привилегированных значений, которые можно установить с помощью IWorkbenchPreferenceConstants (см api).