Membuat Background Gambar Pada GUI Matlab


Untuk membuat background pada GUI Matlab, tidak tersedia pada Property Inspector, namun harus mengetikkannya pada file .m dari GUI yang dibuat. Sebelum membuat programnya terlebih dahulu persiapkan file background dengan ukuran 800 x 600, karena jika tidak berukuran tersebut maka gambar akan terpotong.

Jika membuat GUI pada Matlab, maka akan menghasilkan 2 file yaitu namafile.fig dimana GUI disimpan dan namafile.m dimana eksekusi program terkumpul. Langkah pertama, bukalah Matlab dan ketikkan pada Command Window : GUIDE lalu tekan enter, atau pada menu File > Menu > GUI.

OK, selanjutnya klik kanan pada tengah layar dan pilih M-File Editor, untuk membuat file .m dari GUI anda harus menyimpan GUI tersebut, dan simpan dengan nama background.fig. setelah itu akan muncul jendela .m dengan nama yang sama. Ketikkan listing program dibawah ini pada bagian OpeningFcn sbb.

% Create background axes and move them to the background

hback = axes(‘units’,’normalized’,’position’,[0 0 1 1]);

uistack(hback,’bottom’);

% Load background image and display it

[back map]=imread(‘2.jpg’);

image(back)

colormap(map)

% Turn the handlevisibility off so that we don’t inadvertently plot into

% the axes again. Also, make the axes invisible

set(hback,’handlevisibility’,’off’,’visible’,’off’)

Perlu diingat bahwa script diatasnya tidak boleh diubah, karena script tersebut merupakan setting dari Matlab.

Jika diubah atau dihapus, otomatis program tidak akan berjalan sebagaimana mestinya.

Sekarang jalankan programnya, dengan cara memanggil nama file (background) di command window, atau tekan tombol  Run. Hasilnya adalah sebagai berikut :

function varargout = background(varargin)

% BACKGROUND M-file for background.fig

%      BACKGROUND, by itself, creates a new BACKGROUND or raises the existing

%      singleton*.

%

%      H = BACKGROUND returns the handle to a new BACKGROUND or the handle to

%      the existing singleton*.

%

%      BACKGROUND(‘CALLBACK’,hObject,eventData,handles,…) calls the local

%      function named CALLBACK in BACKGROUND.M with the given input arguments.

%

%      BACKGROUND(‘Property’,’Value’,…) creates a new BACKGROUND or raises the

%      existing singleton*.  Starting from the left, property value pairs are

%      applied to the GUI before background_OpeningFunction gets called.  An

%      unrecognized property name or invalid value makes property application

%      stop.  All inputs are passed to background_OpeningFcn via varargin.

%

%      *See GUI Options on GUIDE’s Tools menu.  Choose “GUI allows only one

%      instance to run (singleton)”.

%

% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help background

% Last Modified by GUIDE v2.5 04-Jun-2011 20:53:37

% Begin initialization code – DO NOT EDIT

gui_Singleton = 1;

gui_State = struct(‘gui_Name’,       mfilename, …

‘gui_Singleton’,  gui_Singleton, …

‘gui_OpeningFcn’, @background_OpeningFcn, …

‘gui_OutputFcn’,  @background_OutputFcn, …

‘gui_LayoutFcn’,  [] , …

‘gui_Callback’,   []);

if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1});

end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});

else

gui_mainfcn(gui_State, varargin{:});

end

% End initialization code – DO NOT EDIT

% — Executes just before background is made visible.

function background_OpeningFcn(hObject, eventdata, handles, varargin)

% This function has no output args, see OutputFcn.

% hObject    handle to figure

% eventdata  reserved – to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)

% varargin   command line arguments to background (see VARARGIN)

% Choose default command line output for background

handles.output = hObject;

% Update handles structure

guidata(hObject, handles);

% UIWAIT makes background wait for user response (see UIRESUME)

% uiwait(handles.figure1);

% Membuat axes dan merubah menjadi background.

%=======================================================

hback = axes(‘units’,’normalized’,’position’,[0 0 1 1]);

uistack(hback,’bottom’);

% menampilkan background

[back map]=imread(‘buahNaga.jpg’);

image(back)

colormap(map)

% handlevisibility off agar axes tidak terlihat

% dan gambar background saja yang muncul.

set(hback,’handlevisibility’,’off’,’visible’,’off’)

%=======================================================

% — Outputs from this function are returned to the command line.

function varargout = background_OutputFcn(hObject, eventdata, handles)

% varargout  cell array for returning output args (see VARARGOUT);

% hObject    handle to figure

% eventdata  reserved – to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure

varargout{1} = handles.output;

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s