Matlab - Problema con el pop-up menu y carga de ficheros

 
Vista:

Problema con el pop-up menu y carga de ficheros

Publicado por Antonio Bautista (3 intervenciones) el 15/11/2012 13:17:30
Hola,

Necesito como averiguar un par de cosas acerca del GUIDE de Matlab:

1) Tengo un pop-up menu en el que tengo puesto los doce meses del año como posibilidades. Sin embargo, en función de la elección de un año en un campo anterior necesito que en el pop-up menu solo aparezcan visibles los meses de Julio a Diciembre. ¿Cómo sería posible programar este comportamiento?


2) La segunda duda es sencilla. Tengo imágenes del tipo hdf en un fichero y alguno subficheros. Por ejemplo, elijo una carpeta, esa carpeta me lleva a otra carpeta y en esta última carpeta es donde se encuentra el fichero hdf. ¿Cómo sería posible que al darle a un botón me cargara la imagen que quiero sin que me salga la ventana de selección para elegir el fichero? Quiero decir, que me lo haga automáticamente el GUIDE de Matlab.

Gracias de antemano, un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Problema con el pop-up menu y carga de ficheros

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 16/11/2012 19:21:19
pregunta2
Debes poner la ruta exacta de tu archivo, pero desde mi punto de vista, es muy parametrizado y solo sirve para un solo pc, y si el codigo lo llevas a otro pc, no va funcionar.
Bueno te contesto de la forma como tal quieres, pero no es recomendable hacer asi.
No debes subestimar ninguna pregunta que haces en el foro, eso de duda sencilla pueda que sea tan sencillo.

1
2
3
4
5
function pushbutton2_Callback(hObject, eventdata, handles)
b='C:\Users\jeremias\Downloads\ARCHIVOS HDF\ARC HDF\Imagen3981.JPG';
b1=imread(b);
axes(handles.axes1);
imshow(b1)


pregunta1.
Si es posible hacerlo. Bueno empieza y copias tu avance al foro y aqui te ayudamos, el objetivo es ayudarte en el punto, donde tengas dudas.


Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programacion matlab
[email protected]

http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con el pop-up menu y carga de ficheros

Publicado por Antonio Bautista (3 intervenciones) el 19/11/2012 12:48:34
En el código de abajo vemos como mediante un cuadro de texto en la función anual recojo el año. Las variables sensor_modis y sensor_czcs son variables de un button panel que en función del valor que tengan, hay unos años válidos y no otros. La duda viene en la función mes, donde si sensor_modis = 1 y el año es 2002 solo quiero que me muestre de julio a diciembre en el pop-up menu y no todos los strings del pop-up menu que van de Enero a Diciembre. Espero haberme explicado .

Muchas gracias
Antonio





function anual_Callback(hObject, eventdata, handles)
% hObject handle to anual (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of anual as text
% str2double(get(hObject,'String')) returns contents of anual as a double
global sensor_modis sensor_czcs ano;


ano=get(hObject,'String');
sensor_modis=get(handles.sensormodis,'Value')
sensor_czcs=get(handles.sensorczcs,'Value')

if length(ano) == 4
ano=str2num(ano);
if (sensor_modis == 1) && (ano >= 2002) && (ano <= 2012)
msgbox('has elegido el año MODIS correcto');
elseif (sensor_czcs == 1) && (ano >= 1978) && (ano <= 1986)
msgbox('has elegido el año CZCS correcto');
else
msgbox('has elegido un año incorrecto');
end

else
msgbox('has elegido un formato incorrecto');
end


% --- Executes during object creation, after setting all properties.
function anual_CreateFcn(hObject, eventdata, handles)
% hObject handle to anual (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end



% --- Executes on selection change in mes.
function mes_Callback(hObject, eventdata, handles)
% hObject handle to mes (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hints: contents = cellstr(get(hObject,'String')) returns mes contents as cell array
% contents{get(hObject,'Value')} returns selected item from mes


global sensor_modis ano;


if (sensor_modis == 1) && (ano == 2002)

% Aqui quiero desarrollar el código que me muestre de Julio a Diciembre

end




% --- Executes during object creation, after setting all properties.
function mes_CreateFcn(hObject, eventdata, handles)
% hObject handle to mes (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% Hint: popupmenu controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar