Borrar filtros
Borrar filtros

Best method of gathering varying amounts of user data via dialog boxes?

1 visualización (últimos 30 días)
I am aiming to create a dialog box that takes two numerical quantities from the user and simply save it to two matrices upon pressing the 'OK' button. The user is essentially building 'layers' of material and is inputting a thickness and an angle associated with each layer. The total number of 'layers' can range 1 < n < 64. Therefore I am looking for the ability to add additional rows of inputs on demand (by pressing a +new layer button), or use a table of sorts (like the one below), so the dialog box doesn't start with 64 blank lines.
This is similar to what I have in mind, except the table on the left would be editable or replaced by text boxes:
Thank you!

Respuesta aceptada

Ankit Bhardwaj
Ankit Bhardwaj el 24 de Abr. de 2017
Editada: Walter Roberson el 24 de Abr. de 2017
You can use a uitable. You can define a push button callback which increases the size of your table by one every time the button is pushed. Here is a sample code which increases the size of the uitable by one with a push button callback. Please note that this code populates the table with random integers. You may need to modify this based on your workflow.
function variableTable
f = figure;
t = uitable(f,'Data',randi(100,10,3),'Position',[20 20 262 204]);
b = uicontrol('Style','pushbutton','Position',[300 20 250 40],'Callback', @(s,e) pushButtonCB(s,e,t));
function pushButtonCB(s,e,t)
row = randi(100,1,3);
t.Data = [t.Data;row];
  1 comentario
Jesse S
Jesse S el 24 de Abr. de 2017
Thank you! I ended up basically using this method, resulting in the following dialog box. The + - buttons add rows to the table.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Simulink Environment Customization en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by