2016-04-01 9 views
2

Matlab R2015a'daki çubuğun genişliğini çubuğun genişliğini nasıl kontrol edebilirim?Çubuk şeklin kalınlığını değiştirme çubuğunda değiştirme - MATLAB R2015a

Sadece şu soruya atıfta:

waitbar -> length ot the bar figure?

Bu sözü kullanıcı olarak çözümü ile Matlab R2012b mükemmel çalışır, ancak R2015a için, 'Waitbar 1' dize ortasına yerleştirilir

HWait = waitbar(0,'Waitbar 1', 'Units', 'normalized', 'Position', [0.25 0.4 0.3 0.08]); 
set(HWait,'Name','Tests running'); 
childrenWaitb = get(HWait, 'Children') ; 
set(childrenWaitb, 'Position',[10.8000 13.5000 320 9]); 

cevap

1

wai: ve hiç genişliği değişmeyen yüzde çubuğu ....

aşağıdaki kod kullanılır tbar, (çok sayıda grafikle birlikte) r2014b'de değişti. Bekleme çubuğu ilerleme çubuğu, konumunu ayarlamanıza izin veren basit bir eksen olarak kullanılır.

yeni waitbar bir java ilerleme çubuğunda üzerine inşa edilmiştir - yani bunu güncellemek için java belgesiz özelliklere erişmek için gerekir:

% Create a progress bar. 
hBar = waitbar (0, 'Please Wait....'); 
% now use java to get to the progress bar 
jFrame = get (hBar, 'JavaFrame'); % this will throw a warning 
jFigPanel = jFrame.getFigurePanelContainer; 
% Now go down through the children of the panel to get the container for the progress bar 
jContainer = jFigPanel.getComponent(0); 
jPanel = jContainer.getComponent(0); 
% Change the location of the panel (ref pixels) 
jPanel.setLocation(0,40); 
% Change the size of the panel 
jPanel.setSize(360,18); 
% You then need to repaint and validate for the update to be visible. 
jContainer.repaint 
jContainer.revalidate