How to colorize the document tabs of the editor?

조회 수: 3 (최근 30일)
Ricardo.Neves
Ricardo.Neves 2018년 5월 24일
답변: Yair Altman 2018년 11월 22일
I often work with several .m files open simultaneously in the editor. Thus, it would be helpful to colorize the tabs of these .m files according to their directory location.
Up to matlab_2012a, this shared code (mathworks.com/matlabcentral/fileexchange/39157) use to do the job exactly as I wanted. Unfortunately, it does not work for my current matlab_2018a.
I tried to debug it, however I encountered a wall. With the following code I was able to change the background color of tabs all together:
desktop = com.mathworks.mde.desk.MLDesktop.getInstance;
jEditor = desktop.getGroupContainer('Editor').getTopLevelAncestor;
jh_gf = findjobj(jEditor,'-property',{'name','EditorGroupFrame'});
DocTab = jh_gf.getComponent(0).getComponent(1).getComponent(0).getComponent(0);
DocTab.setBackground(java.awt.Color(.8,.9,.9));
Now, my problem was when I tried to set the background color of each tab individually. My logic says that the following should work:
First_Tab = DocTab.getComponent(0);
First_Tab.setBackground(java.awt.Color(1,0,0));
Unfortunately it does not work. Anyone knows how to set the background color of each tab individually?
Thanks for the answers.

채택된 답변

Yair Altman
Yair Altman 2018년 11월 22일
I looked into this problem but I could not find a way to do so.
What you proposed is the way that it should have worked, but it seems that the com.mathworks.widgets.desk.DTDocumentTabs$Tab component ignores the Background/Foreground properties in its paintComponent(Graphics) method.

추가 답변 (1개)

Image Analyst
Image Analyst 2018년 5월 24일
Sounds like a question only Yair might be able to answer with anything other than a "No", which the rest of us would. See http://undocumentedmatlab.com/

카테고리

Help CenterFile Exchange에서 Startup and Shutdown에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by