Automatic scroll down on Matlab text window (uicontrol)Calculate actual size needed for a MATLAB uicontrolmatlab show the figure and update the text of the uicontrolmatlab uicontrolsExtending MATLAB uicontrolMATLAB uicontrol 'edit' to show command window messagesMatlab uicontrol function modificationDisplay sprintf text in uicontrol text MATLABCreating an unknown amount of uicontrols in matlabbuilding scrolling window with Matlab GUIcan't get Matlab uicontrol 'text' box to position at top of figure window
Hostile work environment after whistle-blowing on coworker and our boss. What do I do?
Have I saved too much for retirement so far?
Cynical novel that describes an America ruled by the media, arms manufacturers, and ethnic figureheads
What's a natural way to say that someone works somewhere (for a job)?
Is there a good way to store credentials outside of a password manager?
Finding all intervals that match predicate in vector
Can I use my Chinese passport to enter China after I acquired another citizenship?
What would happen if the UK refused to take part in EU Parliamentary elections?
Curses work by shouting - How to avoid collateral damage?
Go Pregnant or Go Home
Time travel short story where a man arrives in the late 19th century in a time machine and then sends the machine back into the past
How to verify if g is a generator for p?
Applicability of Single Responsibility Principle
Is there a problem with hiding "forgot password" until it's needed?
How to be diplomatic in refusing to write code that breaches the privacy of our users
Is a roofing delivery truck likely to crack my driveway slab?
What are the ramifications of creating a homebrew world without an Astral Plane?
There is only s̶i̶x̶t̶y one place he can be
Mapping a list into a phase plot
Is exact Kanji stroke length important?
Failed to fetch jessie backports repository
What would be the benefits of having both a state and local currencies?
voltage of sounds of mp3files
Is it okay / does it make sense for another player to join a running game of Munchkin?
Automatic scroll down on Matlab text window (uicontrol)
Calculate actual size needed for a MATLAB uicontrolmatlab show the figure and update the text of the uicontrolmatlab uicontrolsExtending MATLAB uicontrolMATLAB uicontrol 'edit' to show command window messagesMatlab uicontrol function modificationDisplay sprintf text in uicontrol text MATLABCreating an unknown amount of uicontrols in matlabbuilding scrolling window with Matlab GUIcan't get Matlab uicontrol 'text' box to position at top of figure window
I want to use Matlab to read continuously a file and to show it in a dedicated window. So I use the uicontrol
command. It works well but I want to go directly at the end of the end of the content each time I update the content. Is there any solution for doing that?
MWE:
figHandle = figure('units','pixels',...
'position',[40 40 240 940],...
'menubar','none',...
'resize','off',...
'numbertitle','off',...
'name','window custom')
txHandle = uicontrol('style','edit',...
'units','pix',...
'position',[10 60 220 830],...
'backgroundcolor','w',...
'HorizontalAlign','left',...
'min',0,'max',10,...
'enable','inactive');
txt=repmat('t|',1,100000);
set(txHandle,'string',cat(1,get(txHandle,'string'),txt));
matlab user-interface matlab-figure
add a comment |
I want to use Matlab to read continuously a file and to show it in a dedicated window. So I use the uicontrol
command. It works well but I want to go directly at the end of the end of the content each time I update the content. Is there any solution for doing that?
MWE:
figHandle = figure('units','pixels',...
'position',[40 40 240 940],...
'menubar','none',...
'resize','off',...
'numbertitle','off',...
'name','window custom')
txHandle = uicontrol('style','edit',...
'units','pix',...
'position',[10 60 220 830],...
'backgroundcolor','w',...
'HorizontalAlign','left',...
'min',0,'max',10,...
'enable','inactive');
txt=repmat('t|',1,100000);
set(txHandle,'string',cat(1,get(txHandle,'string'),txt));
matlab user-interface matlab-figure
add a comment |
I want to use Matlab to read continuously a file and to show it in a dedicated window. So I use the uicontrol
command. It works well but I want to go directly at the end of the end of the content each time I update the content. Is there any solution for doing that?
MWE:
figHandle = figure('units','pixels',...
'position',[40 40 240 940],...
'menubar','none',...
'resize','off',...
'numbertitle','off',...
'name','window custom')
txHandle = uicontrol('style','edit',...
'units','pix',...
'position',[10 60 220 830],...
'backgroundcolor','w',...
'HorizontalAlign','left',...
'min',0,'max',10,...
'enable','inactive');
txt=repmat('t|',1,100000);
set(txHandle,'string',cat(1,get(txHandle,'string'),txt));
matlab user-interface matlab-figure
I want to use Matlab to read continuously a file and to show it in a dedicated window. So I use the uicontrol
command. It works well but I want to go directly at the end of the end of the content each time I update the content. Is there any solution for doing that?
MWE:
figHandle = figure('units','pixels',...
'position',[40 40 240 940],...
'menubar','none',...
'resize','off',...
'numbertitle','off',...
'name','window custom')
txHandle = uicontrol('style','edit',...
'units','pix',...
'position',[10 60 220 830],...
'backgroundcolor','w',...
'HorizontalAlign','left',...
'min',0,'max',10,...
'enable','inactive');
txt=repmat('t|',1,100000);
set(txHandle,'string',cat(1,get(txHandle,'string'),txt));
matlab user-interface matlab-figure
matlab user-interface matlab-figure
asked Mar 8 at 9:31
GuukGuuk
240112
240112
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
There is no pure MATLAB way of doing so, but it is perfectly possible, using undocummented methods, manipulating the underlaying java components.
The first thing needed is the utility findjobj
from Matlab central. You need to download this function and have it accessible in your MATLAB path. This function will retrieve the handle of the java object underlying the MATLAB text box.
Once you have access to the java methods of the textbox, moving the caret
to the end of the text is trivial, you just need to call one of the component method: setCaretPosition(positionIndex)
.
Once you have the function findjobj
in your MATLAB path, just add this code after your example code:
% Get the handle of the jave edit box
jtxtBox = findjobj(txHandle) ;
% Get the handle of the jave "panel" component
jTxtPane = jtxtBox.getComponent(0).getComponent(0) ;
% move the caret to the end of the text
jTxtPane.setCaretPosition( numel(txt) );
et voila :-)
Thank you very much. Another solution could be to usejTxtPane.getDocument.getLength
in place ofnumel(txt)
but requires to add apause(0.1)
just before.
– Guuk
Mar 8 at 15:20
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55060298%2fautomatic-scroll-down-on-matlab-text-window-uicontrol%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
There is no pure MATLAB way of doing so, but it is perfectly possible, using undocummented methods, manipulating the underlaying java components.
The first thing needed is the utility findjobj
from Matlab central. You need to download this function and have it accessible in your MATLAB path. This function will retrieve the handle of the java object underlying the MATLAB text box.
Once you have access to the java methods of the textbox, moving the caret
to the end of the text is trivial, you just need to call one of the component method: setCaretPosition(positionIndex)
.
Once you have the function findjobj
in your MATLAB path, just add this code after your example code:
% Get the handle of the jave edit box
jtxtBox = findjobj(txHandle) ;
% Get the handle of the jave "panel" component
jTxtPane = jtxtBox.getComponent(0).getComponent(0) ;
% move the caret to the end of the text
jTxtPane.setCaretPosition( numel(txt) );
et voila :-)
Thank you very much. Another solution could be to usejTxtPane.getDocument.getLength
in place ofnumel(txt)
but requires to add apause(0.1)
just before.
– Guuk
Mar 8 at 15:20
add a comment |
There is no pure MATLAB way of doing so, but it is perfectly possible, using undocummented methods, manipulating the underlaying java components.
The first thing needed is the utility findjobj
from Matlab central. You need to download this function and have it accessible in your MATLAB path. This function will retrieve the handle of the java object underlying the MATLAB text box.
Once you have access to the java methods of the textbox, moving the caret
to the end of the text is trivial, you just need to call one of the component method: setCaretPosition(positionIndex)
.
Once you have the function findjobj
in your MATLAB path, just add this code after your example code:
% Get the handle of the jave edit box
jtxtBox = findjobj(txHandle) ;
% Get the handle of the jave "panel" component
jTxtPane = jtxtBox.getComponent(0).getComponent(0) ;
% move the caret to the end of the text
jTxtPane.setCaretPosition( numel(txt) );
et voila :-)
Thank you very much. Another solution could be to usejTxtPane.getDocument.getLength
in place ofnumel(txt)
but requires to add apause(0.1)
just before.
– Guuk
Mar 8 at 15:20
add a comment |
There is no pure MATLAB way of doing so, but it is perfectly possible, using undocummented methods, manipulating the underlaying java components.
The first thing needed is the utility findjobj
from Matlab central. You need to download this function and have it accessible in your MATLAB path. This function will retrieve the handle of the java object underlying the MATLAB text box.
Once you have access to the java methods of the textbox, moving the caret
to the end of the text is trivial, you just need to call one of the component method: setCaretPosition(positionIndex)
.
Once you have the function findjobj
in your MATLAB path, just add this code after your example code:
% Get the handle of the jave edit box
jtxtBox = findjobj(txHandle) ;
% Get the handle of the jave "panel" component
jTxtPane = jtxtBox.getComponent(0).getComponent(0) ;
% move the caret to the end of the text
jTxtPane.setCaretPosition( numel(txt) );
et voila :-)
There is no pure MATLAB way of doing so, but it is perfectly possible, using undocummented methods, manipulating the underlaying java components.
The first thing needed is the utility findjobj
from Matlab central. You need to download this function and have it accessible in your MATLAB path. This function will retrieve the handle of the java object underlying the MATLAB text box.
Once you have access to the java methods of the textbox, moving the caret
to the end of the text is trivial, you just need to call one of the component method: setCaretPosition(positionIndex)
.
Once you have the function findjobj
in your MATLAB path, just add this code after your example code:
% Get the handle of the jave edit box
jtxtBox = findjobj(txHandle) ;
% Get the handle of the jave "panel" component
jTxtPane = jtxtBox.getComponent(0).getComponent(0) ;
% move the caret to the end of the text
jTxtPane.setCaretPosition( numel(txt) );
et voila :-)
answered Mar 8 at 10:57
HokiHoki
9,17411536
9,17411536
Thank you very much. Another solution could be to usejTxtPane.getDocument.getLength
in place ofnumel(txt)
but requires to add apause(0.1)
just before.
– Guuk
Mar 8 at 15:20
add a comment |
Thank you very much. Another solution could be to usejTxtPane.getDocument.getLength
in place ofnumel(txt)
but requires to add apause(0.1)
just before.
– Guuk
Mar 8 at 15:20
Thank you very much. Another solution could be to use
jTxtPane.getDocument.getLength
in place of numel(txt)
but requires to add a pause(0.1)
just before.– Guuk
Mar 8 at 15:20
Thank you very much. Another solution could be to use
jTxtPane.getDocument.getLength
in place of numel(txt)
but requires to add a pause(0.1)
just before.– Guuk
Mar 8 at 15:20
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55060298%2fautomatic-scroll-down-on-matlab-text-window-uicontrol%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown