Utangulizi wa ukuzaji wa GUI. Kuunda kiolesura cha picha kwa kutumia Qt

Ufafanuzi: Tunasoma wijeti - vipengele vinavyoonekana vinavyounda kiolesura cha picha cha mtumiaji, mpangilio wao, sera ya ukubwa, miunganisho ya nafasi ya mawimbi, vipengee vya kiolesura cha picha na matumizi yake.

13.1 Wijeti

Wijeti ni vipengele vinavyoonekana vinavyounda kiolesura cha picha cha mtumiaji.

Mifano ya wijeti:

  • Kitufe (darasa QPushButton);
  • Lebo(darasa la QLabel);
  • Sehemu ya kuingiza (darasa QLineEdit);
  • Sehemu ya kukabiliana na nambari (darasa la QSpinBox);
  • Upau wa kusogeza (darasa QScrollBar ).

Qt ina takriban madarasa 50 yaliyotengenezwa tayari ya vipengele vya picha vinavyopatikana kwa matumizi. Darasa kuu la wijeti zote ni darasa la QWidget. Sifa zote kuu za vitu vya kuona zimerithiwa kutoka kwake, ambazo tutazingatia kwa uangalifu. Hebu tuanze kuchunguza njia za kuendeleza programu na kiolesura cha picha na mfano.

Wacha tuunde faili tupu ya mradi. Zindua mchawi wa mradi na uchague kipengee katika sehemu ya Miradi Mradi mwingine. Ifuatayo, chagua aina ya mradi Mradi wa Qt Tupu. Wacha tuongeze yaliyomo kwenye faili ya mradi:

TEMPLATE = moduli za programu #Qt ambazo tutatumia wijeti za QT += #Ongeza sehemu ya wijeti ili kufanya kazi na wijeti (muhimu kwa Qt5). LENGO = widget#Jina la faili inayoweza kutekelezwa SOURCES += \ main.cpp

Sasa hebu tuunda programu rahisi na dirisha ambalo tutaonyesha uandishi. Hebu tuweke ukubwa wa dirisha na maandishi ya kichwa chake, na pia kuweka font kwa uandishi. Ili kufanya hivyo, unda faili main.cpp na maudhui yafuatayo:

#pamoja na #pamoja na int main ( int lArgc, char * lArgv ) ( // Tengeneza kitu cha QApplication ambacho huanzisha na kusanidi programu ya dirisha, // hudhibiti utekelezaji wake kwa kutumia kitanzi cha tukio la QApplication lApplication (lArgc, lArgv); QLabel lLabel; // Tengeneza QLabel wijeti - weka lebo lLabel.setText ("Mimi ni wijeti!"); //Weka maandishi ya lebo lLabel.setGeometry (200, 200, 300, 150); //Weka vipimo - nafasi (x, y), upana na urefu. Weka maandishi ya upatanishi lLabel.setAlignment (Qt::AlignHCenter | Qt::AlignVCenter); // Darasa la QFont linatumika kuweka vigezo vya fonti. //Chagua familia ya fonti ya Arial Black na saizi 12. QFont lBlackFont (" Arial Black", 12); lLabel. setFont (lBlackFont); //Weka fonti ya lebo ya lLabel.show (); //Piga njia ya show() ili kuonyesha lebo kwenye skrini. rudisha lApplication.exec () ; //Endesha programu ili kutekeleza exec() tekeleza // uchakataji wa tukio la kitanzi. Programu husubiri vitendo vya mtumiaji na kuzichakata.)

Kama tunavyoona, vipengele vinavyounda miingiliano katika Qt vina nafasi na ukubwa wao wenyewe - kinachojulikana kama "jiometri" - na hivyo huchukua eneo la mstatili sambamba kwenye skrini (ona Mchoro 13.1). Pia, kila kipengele kina mipangilio ambayo huamua tabia na kuonekana kwake.


Mchele. 13.1.

Ili kuunda muundo, vilivyoandikwa hupangwa katika uongozi kulingana na kanuni ya "sehemu - nzima". Kila wijeti inaweza kuwa na wijeti zingine. Kipengele hiki cha kuona kinakuwa "mzazi" (wijeti ya mzazi) ya vipengele vilivyomo. Kumbuka kuwa uhusiano kama huo haupaswi kuchanganyikiwa na urithi katika C ++ - uhusiano kati ya madarasa katika programu. Uhusiano kati ya vilivyoandikwa ni uhusiano kati ya vitu. Mahusiano kama haya husababisha matokeo kadhaa:

  • kipengele cha mzazi kitakuwa na jukumu la kufuta kipengele cha mtoto: ikiwa widget ya mzazi imefutwa, itafuta vipengele vyote vya mtoto kiotomatiki;
  • wijeti ya mzazi huweka wijeti za watoto ndani yake, sehemu za wijeti za watoto zinazoenea zaidi ya mzazi hazitaonekana;
  • sehemu ya hali ya wijeti ya mzazi hupitishwa kwa watoto wake - hii inatumika kwa baadhi ya sifa (mwonekano, shughuli) na mitindo ambayo inatumika kwa kipengele cha kuona.

Wijeti ambazo hazina mzazi (wijeti za kiwango cha juu) huonekana kama madirisha tofauti katika programu. Hebu tuangalie mfano. Hebu tutaje mradi mpya wa ParentExample. Faili ya mradi itakuwa na mipangilio ya kawaida ya mradi wa GUI:

TEMPLATE = app TARGET = ParentExample QT += wijeti

Kwa wijeti ambayo tutatumia kama dirisha kuu, tutaunda darasa jipya. Kwa hili katika kategoria Faili na Madarasa Hebu tuchague sehemu ya C ++ na uchague Hatari ya C ++ (tazama Mchoro 13.2).

Hatua inayofuata ni kuunda vipengele kadhaa kwenye dirisha. Ili kufanya hivyo, fungua faili ya parentwidget.cpp na ubadilishe msimbo wa wajenzi wa darasa. Ili kuonyesha vipengee, viunde tu katika kijenzi cha darasa na uweke ParentWidget kama mzazi wao. Msimbo wa parentwidget.cpp unaonekana kama hii:

#pamoja na " parentwidget.h " #pamoja na #pamoja na #pamoja na ParentWidget::ParentWidget (QWidget * mzazi) : QWidget (mzazi) ( //Unda lebo inayoonyesha wijeti ya mzazi - hii, yaani, mfano wa darasa la ParentWidget. QLabel * lLabel=QLabel mpya (hii); //Position inayohusiana na kona ya juu kushoto ya wijeti kuu. lLabel ->wekaJiometri (50, 0, 100, 30); lLabel ->weka Nakala (" TextLabel "); //Nakala kwenye lebo. //Unda kitufe, weka "mzazi", jiometri na maandishi QPushButton * lPushButton = QPushButton mpya (hii); lPushButton->wekaJiometri (50, 50, 100, 30); lPushButton->setText (" PushButton "); //Unda sehemu ya ingizo, weka "mzazi", jiometri na maandishi QLineEdit * lLineEdit = QLineEdit mpya ( hii); lLineEdit ->wekaJiometri (50, 100, 100, 30); lLineEdit ->setText (" LineEdit "); lLineEdit ->chaguaYote (); // Chagua maandishi katika uga wa ingizo (kwa mfano tu) // Hatimaye badilisha saizi ya seti ya wijeti kuuJiometri (x (), y (), 300, 150); // na uweke maandishi ya kichwa cha dirisha setWindowTitle (" parent widgetExample " );)

Kwa kuwa kipengele kikuu ni ParentWidget , lebo (QLabel), kitufe (QPushButton) na sehemu ya maandishi (QLineEdit) zimo ndani yake. Nafasi ya wijeti za watoto imewekwa kulingana na kona ya juu kushoto ya baba. Unaweza kuthibitisha hili kwa urahisi kwa kubadilisha ukubwa na nafasi ya dirisha la programu yetu. Angalia jinsi tulivyounda vipengele vya UI kwenye lundo kwa kutumia opereta mpya. Hii inahakikisha kwamba vipengele haviondolewi baada ya mjenzi wa ParentWidget kukamilisha.

Maendeleo ya GUI

Njia kuu za mwingiliano wa watumiaji na programu ni Kiolesura cha Mchoro cha Mtumiaji (GUI). GUI ya bidhaa yoyote ya programu ni mojawapo ya mambo muhimu katika umaarufu wake.

Kuunda kiolesura chenye uwezo wa mtumiaji ni mchakato unaohitaji nguvu kazi kubwa na unahitaji umakini wa hali ya juu kwa undani. Kiolesura kinachoundwa kinapaswa kuongeza uwezo wa programu, lakini wakati huo huo usipakie mtumiaji kwa wingi wa menyu, vifungo, picha na maandishi.

Katika mazoezi, programu maombi ya Windows inahusisha matumizi makubwa ya zana mbalimbali na wachawi. Kwa hivyo, kwa kuzingatia viwango vya mfumo wa uendeshaji uliochaguliwa, programu itakuwa na interface ya dirisha. Hii ni kwa sababu, kwanza kabisa, kwa ukweli kwamba windows ndio vitu kuu vya kiolesura cha picha katika mifumo ya uendeshaji (OS) ya familia ya Windows. Ni maeneo ya mstatili ambayo yana mipangilio yao wenyewe, mali na aina.

Sehemu ya picha ya kizuizi cha mafunzo ni pamoja na madirisha ya aina nne:

Dirisha kuu lina vipengele vyote vya urambazaji ndani ya programu, pamoja na maelezo ya ziada muhimu kwa urahisi wa kufanya kazi na programu;

Dirisha la usimamizi wa msingi wa habari ni pamoja na vipengele vyote vya udhibiti wa sehemu ya habari ya chombo cha programu. Wanatoa nyongeza ya majaribio, habari, watumiaji wapya na wasimamizi, na kuruhusu upotoshaji wa data mpya iliyoundwa au iliyopo;

Windows ya kufanya kazi na uwezo wa programu - kutoa kazi na kazi kuu za kizuizi cha mafunzo, kama vile kupitisha vipimo na kusoma mihadhara;

Windows kwa ajili ya kuonyesha taarifa na takwimu -- hutumika kuonyesha aina mbalimbali za taarifa, pamoja na takwimu na grafu.

Dirisha kuu la programu litakuwa na vidhibiti vifuatavyo na pato la habari:

Kichwa cha dirisha, ambacho kina jina la programu na madhumuni ya dirisha;

Vifungo vya menyu ya mfumo ambavyo vina jukumu la kurekebisha ukubwa, kupunguza na kufunga programu;

Eneo la kichwa cha dirisha, ambalo lina kazi ya mapambo tu na ni muhimu kuzingatia ufumbuzi wa jumla wa kubuni;

Eneo la kukaribisha;

Eneo la kuonyesha siku ya wiki, tarehe ya sasa na wakati;

Upau wa zana maalum ulio na vifungo vya kufikia kazi kuu za programu;

Jopo la utawala linajumuisha kifungo cha kufikia udhibiti wa utawala wa PS;

Upau wa hali unaoonyesha habari kuhusu njia zote za uendeshaji za programu.

Mchoro wa dirisha kuu la kiolesura cha graphical (mwonekano wa dirisha kwa akaunti ya utawala) umeonyeshwa kwenye Mchoro 3.2.

Mchoro 3.2 -- Mchoro wa dirisha kuu la kiolesura cha picha: 1 -- kichwa cha dirisha; 2 -- vitufe vya menyu ya mfumo; 3 -- eneo la kichwa cha dirisha; 4 -- upau wa hali; 5 - eneo la kukaribisha; 6 -- eneo la kuonyesha siku ya juma, tarehe na saa; 7 -- jopo la utawala; 8 -- paneli ya mtumiaji; 9 -- kitufe cha kufikia hatua ya kujifunza; 10 -- kitufe cha kufikia hatua ya majaribio; 11 -- kitufe cha kuonyesha takwimu na grafu; 12 -- toka; 13 -- kitufe cha kufikia sehemu ya usimamizi ya programu

Kwa kuzingatia lengo la programu inayotengenezwa, ufumbuzi kadhaa usio wa kawaida wa mchoro ulitengenezwa ili kuvutia tahadhari na maslahi makubwa katika maombi. Kwa kuongezea, hii hukuruhusu kupata aina fulani ya umoja kati ya safu zingine za programu za mada na umakini sawa.

Moja ya ufumbuzi huu inaweza kuitwa vipengele vya interface vya rangi vinavyounda muundo wa kipekee, ambao hauna analogues katika eneo hili. Tunazungumza juu ya viingilio vilivyohuishwa kulingana na uhuishaji wa Flash. Zinatumika kutengeneza majina ya madirisha yote ya kazi kuu, vipengele vya urambazaji, na kiolesura cha fomu ya usajili na idhini. Faida kuu za maendeleo haya ni: utekelezaji wa interface ya kupendeza na ya kirafiki; kurahisisha kwa kiasi kikubwa kutumia programu, katika viwango vya mtumiaji na vya utawala.

Nyingine ya faida kuu kati ya programu za analog, katika programu na katika utekelezaji wa graphical, ni shirika la kupitisha vipimo kwa ombi. Ili kupitisha aina hii ya jaribio, mtumiaji lazima akusanye maswali ya SQL kutoka kwa vipengele tofauti, vinavyojitegemea. Kulingana na aina ya ombi ambalo linahitaji kufanywa kulingana na masharti ya kazi iliyopendekezwa, polygon maalum ya mkusanyiko huundwa. Poligoni ina sehemu za kubadilisha waendeshaji ambazo huvutwa ndani yao na kipanya kutoka kwa kizuizi tofauti, na sehemu za kuingiza majina ya jedwali, sehemu na masharti.

Takwimu za mtumiaji zinatekelezwa kwa namna ya grafu, ambazo zimejengwa kulingana na matokeo yaliyopatikana naye. Kila mtihani una mienendo yake mwenyewe. Chati zina saini zote muhimu, zinatekelezwa kwa kutumia sehemu ya TChart, na kwa hiyo zina udhibiti mwingi ambao umejengwa ndani ya sehemu hiyo kwa chaguo-msingi na, kwa sababu hiyo, kutekelezwa katika programu.

Pia, kwa taswira inayomfaa mtumiaji zaidi, mitindo ya vichwa vya jedwali imebadilishwa na ile iliyotekelezwa katika mazingira chaguomsingi ya ukuzaji.

Kwa hivyo, suluhisho za picha zilizotekelezwa zilifanya iwezekane kufikia matokeo yaliyokusudiwa na wazo la muundo wa GUI. Kiolesura kilichoundwa kinaongeza uwezo wa programu, lakini wakati huo huo haipakia mtumiaji kwa wingi wa menyu, vifungo, picha na maandishi.

Imechangiwa na Saleem Gul na Tomas Pavek

Mafunzo haya yanashughulikia kuunda kiolesura rahisi cha kielelezo cha mtumiaji na kuongeza utendaji rahisi wa upande wa seva kwake. Hasa, tutaangalia msimbo unaofafanua tabia ya vifungo na mashamba kwenye fomu ya Swing.

Tutaangalia mpangilio na muundo wa GUI, kisha kuongeza vifungo na sehemu za maandishi. Sehemu za maandishi zimeundwa kupokea habari iliyoingizwa na mtumiaji na kuonyesha matokeo ya programu. Kitufe kitaanzisha uendeshaji wa kazi zilizojengwa kwenye sehemu ya mteja ya programu. Programu inayoundwa ni kikokotoo rahisi lakini kinachofanya kazi kikamilifu.

Kwa mwongozo wa kina zaidi wa vipengele vya ukuzaji vya Mbuni wa GUI, ikijumuisha maonyesho ya video ya vipengele mbalimbali vya ukuzaji, ona.

Muda uliokadiriwa: Dakika 20

Zoezi la 1: Kuunda Mradi

Hatua ya kwanza ni kuunda mradi wa IDE kwa programu unayotengeneza. Hebu tupe jina la mradi NumberAddition.

  1. Chagua Faili > Mradi Mpya. Unaweza pia kubofya ikoni ya Mradi Mpya kwenye upau wa vidhibiti wa IDE.
  2. Katika eneo la Jamii, chagua nodi ya Java. Katika eneo la "Miradi", chagua "Maombi ya Java". Bonyeza "Ijayo".
  3. Weka Nambari ya Nyongeza katika sehemu ya Jina la Mradi na ubainishe njia, kama vile saraka ya nyumba yako, kama eneo la mradi.
  4. Chagua kisanduku cha kuteua "Tumia folda tofauti ili kuhifadhi maktaba" na ueleze eneo la folda ya maktaba (hiari). Kwa maelezo zaidi, angalia Shiriki maktaba na wengine katika hati Kutengeneza Programu kwa kutumia NetBeans IDE.
  5. Ondoa kisanduku cha kuteua cha "Unda Daraja Kuu" ikiwa imechaguliwa.
  6. Bofya kitufe cha "Imefanyika".

Zoezi la 2: Kuunda Mwisho wa Mbele

Ili kuendelea na mchakato wa kuunda kiolesura, unahitaji kuunda chombo cha Java ambacho vipengele vingine vinavyohitajika vya GUI vitawekwa. Katika shughuli hii, kontena itaundwa kwa kutumia kipengele cha JFrame. Chombo kitawekwa kwenye kifurushi kipya, ambacho kitaonekana kwenye nodi ya "Vifurushi vya Chanzo".

Kuunda Chombo cha JFrame

  1. Katika dirisha la Miradi, bonyeza-click nodi ya NumberAddition na uchague Mpya > Nyingine.
  2. Katika sanduku la mazungumzo la Unda Faili, chagua kitengo cha Fomu za Swing GUI na aina ya faili ya JFrame. Bonyeza "Ijayo".
  3. Weka NumberAdditionUI kama jina la darasa.
  4. Chagua kifurushi cha my.numberadition.
  5. Bofya kitufe cha "Imefanyika".

IDE huunda fomu ya NumberAdditionUI na darasa la NumberAdditionUI katika programu ya NumberAddition na kufungua fomu ya NumberAdditionUI katika GUI Builder. Kifurushi cha my.NumberAddition kinachukua nafasi ya kifurushi chaguomsingi.

Kuongeza Vipengee: Kuunda Mwisho wa Mbele

Ifuatayo, kwa kutumia dirisha la "Palette", kiolesura cha nje cha programu kinajazwa na JPanel. Baada ya hayo, vipengele vitatu vya JLabel (lebo za maandishi), vipengele vitatu vya JTextField (mashamba ya maandishi), na vipengele vitatu vya JButton (vifungo) vinaongezwa. Ikiwa haujafanya kazi na mbuni wa GUI hapo awali, angalia Kubuni GUI ya Swing katika NetBeans IDE kwa maelezo kuhusu uwekaji wa sehemu.

Baada ya kuburuta na kuweka vipengele vilivyo hapo juu, kipengele cha JFrame kinapaswa kuonekana kama picha iliyo hapa chini.

Ikiwa hakuna dirisha la Palette kwenye kona ya juu ya kulia ya IDE, chagua Dirisha > Palette.

  1. Ili kuanza, chagua paneli kutoka kwa kategoria ya Vyombo vya Swing kwenye ubao na uiburute hadi kwenye JFrame.
  2. JPanel itaangaziwa. Nenda kwenye dirisha la Sifa na ubofye kitufe cha duaradufu (...) karibu na uwanja wa Mpaka ili kuchagua mtindo wa mpaka.
  3. Katika sanduku la mazungumzo ya Mpaka, chagua TitledBorder kutoka kwenye orodha na uingie Ongezeko la Nambari kwenye uwanja wa Kichwa. Bofya "Sawa" ili kuhifadhi mabadiliko yako na ufunge kisanduku cha mazungumzo.
  4. Skrini sasa inapaswa kuonyesha kipengee tupu cha "JFrame" chenye kichwa "Ongezeko la Nambari" kama inavyoonyeshwa kwenye picha. Kama ilivyo kwa picha, ongeza JLabels tatu, JTextFields tatu na JButtons tatu kwake.

Kubadilisha vipengele

Hatua hii itabadilisha jina la vipengele ambavyo vimeongezwa kwenye kipengele cha JFrame.

  1. Bofya mara mbili jLabel1 na ubadilishe ntrcn (mali ya "maandishi") kuwa Nambari ya Kwanza.
  2. Bonyeza mara mbili jLabel2 na ubadilishe maandishi kuwa Nambari ya Pili.
  3. Bonyeza mara mbili jLabel3 na ubadilishe maandishi kuwa Matokeo.
  4. Ondoa maandishi chaguo-msingi kutoka kwa jTextField1. Maandishi yanayoonyeshwa yanaweza kubadilishwa kuwa maandishi yanayoweza kuhaririwa. Ili kufanya hivyo, bonyeza-click shamba la maandishi na uchague "Hariri Maandishi" kutoka kwenye orodha ya pop-up. Hii inaweza kukuhitaji kurejesha jTextField1 kwa saizi yake asili. Rudia hatua hii kwa uga za jTextField2 na jTextField3.
  5. Badilisha maandishi ya onyesho ya jButton1 kuwa Futa . (Ili kubadilisha maandishi ya kitufe, bofya-kulia kitufe na uchague Hariri Maandishi. Vinginevyo, unaweza kubofya kitufe, sitisha, na ubofye tena.)
  6. Badilisha maandishi ya onyesho ya jButton2 kuwa Ongeza .
  7. Badilisha maandishi ya onyesho ya jButton3 kuwa Toka .

Sasa GUI iliyokamilishwa inapaswa kuonekana kama picha hapa chini:

Zoezi la 3: Kuongeza utendaji

Zoezi hili litaongeza utendakazi unaohitajika kwenye vitufe vya Ongeza, Futa na Toka. Sehemu jTextField1 na jTextField2 zitatumika kwa ingizo la mtumiaji, na jTextField3 itatumika kuonyesha matokeo ya programu. Mpango ulioundwa ni calculator rahisi. Basi tuanze!

Inaongeza utendakazi kwenye kitufe cha Toka

Ili vifungo vifanye kazi, kila mmoja wao lazima apewe msimamizi wa tukio, ambaye atakuwa na jukumu la kujibu matukio. Kwa upande wetu, tunahitaji kutambua tukio la kubofya kifungo - ama kwa kubofya panya au kutumia kibodi. Kwa hivyo, kiolesura cha "ActionListener" kitatumika kushughulikia matukio ya "ActionEvent".

  1. Bonyeza-click kitufe cha "Toka". Kutoka kwa menyu ibukizi, chagua Matukio > Kitendo > Kitendo Kimetekelezwa. Tafadhali kumbuka kuwa menyu ina matukio mengine mengi ambayo programu inaweza kujibu! Unapochagua tukio lililotekelezwa, IDE itaongeza kiotomatiki ActionListener kwenye kitufe cha Toka na kuunda mbinu ya kidhibiti ili kushughulikia mbinu ya msikilizaji iliyotekelezwa.
  2. IDE inafungua kiotomatiki Dirisha la Msimbo wa Chanzo, kukuonyesha mahali pa kuingiza kitendo unachotaka kifungo kifanye unapobofya (na kipanya chako au kibodi). Dirisha la "Msimbo wa Chanzo" linapaswa kuwa na mistari ifuatayo: utupu wa faragha jButton3ActionPerformed(java.awt.event.ActionEvent evt) ( //TODO ongeza msimbo wako wa kushughulikia hapa: )
  3. Sasa hebu tuongeze msimbo wa kitendo ambacho kitufe cha "Toka" kinapaswa kufanya. Badilisha mstari wa TODO na System.exit(0); . Msimbo uliokamilika wa kitufe cha "Ondoka" unapaswa kuonekana kama hii: utupu wa faragha jButton3ActionPerformed(java.awt.event.ActionEvent evt) ( System.exit(0); )

Kuongeza utendaji kwa kitufe cha "Futa".

  1. Bonyeza kulia kitufe cha "Futa" (jButton1). Kutoka kwa menyu inayoonekana, chagua "Matukio > Kitendo > Kitendo Kimetekelezwa".
  2. Kubofya kitufe cha "Futa" kunapaswa kusababisha maandishi yote kuondolewa kwenye sehemu zote za maandishi za "jTextField". Ili kufanya hivyo, ongeza nambari inayofanana na ile iliyo hapo juu. Msimbo wa chanzo uliokamilika unapaswa kuonekana kama hii: utupu wa faragha jButton1ActionPerformed(java.awt.event.ActionEvent evt)( jTextField1.setText(""); jTextField2.setText(""); jTextField3.setText("");

Msimbo huu huondoa maandishi kutoka kwa JTextFields zote tatu, na kuziacha tupu.

Kuongeza utendaji kwa kitufe cha "Ongeza".

Kitufe cha "Ongeza" kinapaswa kufanya mambo matatu.

  1. Kwanza huchukua ingizo la mtumiaji katika sehemu za jTextField1 na jTextField2 na kuzibadilisha kutoka kwa aina ya "Kamba" hadi aina ya "Float".
  2. Kisha itafanya nyongeza ya nambari mbili.
  3. Mwishowe, itabadilisha jumla kuwa Kamba na kuiweka ndani jTextField3 .
Hebu tuanze!
  1. Bofya kichupo cha Kubuni kilicho juu ya nafasi ya kazi ili kurudi kwenye skrini ya Usanifu wa Fomu.
  2. Bofya kulia kitufe cha "Ongeza" (jButton2). Kutoka kwa menyu ibukizi, chagua Matukio > Kitendo > Kitendo Kimetekelezwa.
  3. Ongeza msimbo kwa vitendo ambavyo kitufe cha "Ongeza" kinapaswa kufanya. Nambari ya chanzo iliyokamilishwa inapaswa kuonekana kama hii: utupu wa kibinafsi jButton2ActionPerformed(java.awt.event.ActionEvent evt)( // Kwanza tunafafanua vigeu vya kuelea. float num1, num2, tokeo; // Lazima tuchanganue maandishi kwa aina ya kuelea. num1 = Float.parseFloat(jTextField1.getText()); num2 = Float.parseFloat(jTextField2.getText()); // Sasa tunaweza kutekeleza nyongeza. result = num1+num2; // Sasa tutapitisha thamani ya matokeo kwa jTextField3. // Wakati huo huo, tutaenda // kubadilisha thamani ya matokeo kutoka kwa kuelea hadi kwa kamba. jTextField3.setText(String.valueOf(matokeo)); )

Sasa mpango uko tayari kabisa, na unaweza kuanza kukusanyika na kutekeleza.

Zoezi la 4: Utekelezaji wa Mpango

Ili kuendesha programu katika IDE, fuata hatua hizi:

  1. Chagua Endesha > Endesha Mradi Mkuu (vinginevyo, bonyeza F6).

    Kumbuka. Ukifungua kidirisha kinachoonyesha kwamba Project NumberAddition haina darasa kuu lililobainishwa, unapaswa kuchagua my.NumberAddition.NumberAdditionUI kama darasa kuu katika dirisha moja na ubofye SAWA.

Ili kuendesha programu nje ya IDE, fuata hatua hizi:

Baada ya sekunde chache programu itazindua.

Kumbuka. Ikiwa kubofya mara mbili faili ya JAR hakuzinduzi programu, angalia uhusiano wa faili za JAR kwenye mfumo wako wa uendeshaji kwa maelezo zaidi.

Unaweza pia kuendesha programu kutoka kwa mstari wa amri.

Ili kuendesha programu kutoka kwa mstari wa amri, fuata hatua hizi:

  1. Fungua haraka ya amri au dirisha la terminal.
  2. Kwa haraka ya amri, badilisha saraka ya sasa kwenye saraka ya NumberAddition/dist.
  3. Kwa haraka ya amri, ingiza taarifa ifuatayo: java -jar NumberAddition.jar

    Kumbuka. Hakikisha kuwa my.NumberAddition.NumberAdditionUI imewekwa kama darasa kuu kabla ya kuendesha programu. Ili kuangalia hili, bofya kulia nodi ya mradi wa NumberAddition kwenye paneli ya Miradi, chagua Sifa kutoka kwenye menyu ibukizi, na uchague kategoria ya Endesha kwenye kisanduku cha mazungumzo cha Sifa za Mradi. Sehemu ya Daraja Kuu inapaswa kuonyesha my.numberaddition.NumberAdditionUI .

Injini ya Kuchakata Tukio

Mafunzo haya yaliangalia kujibu tukio rahisi la kubofya kitufe. Kuna matukio mengi ambayo programu inaweza kujibu. Katika IDE, unaweza kuona orodha ya matukio yanayopatikana ambayo yanaweza kuchakatwa na vipengele vya GUI kama ifuatavyo:

  1. Rudi kwenye faili ya NumberAdditionUI.java katika kihariri. Bofya kichupo cha "Design" ili kuona muundo wa GUI katika GUI Builder.
  2. Bofya kulia kipengele chochote cha GUI na uchague "Matukio" kutoka kwenye menyu inayoonekana. Sasa unaweza kuchunguza yaliyomo kwenye menyu bila kuchagua vipengee vyovyote.
  3. Vinginevyo, unaweza kuchagua "Mali" kutoka kwenye menyu ya "Dirisha". Katika dirisha la Sifa, bofya kichupo cha Matukio. Kichupo cha "Matukio" hukuruhusu kutazama na kubadilisha vidhibiti vya tukio vinavyohusishwa na kipengee amilifu cha GUI kwa sasa.
  4. Programu inaweza pia kujibu mibofyo mibofyo, mibofyo moja, mara mbili au tatu, miondoko ya kielekezi cha kipanya, kubadilisha ukubwa wa dirisha na miondoko ya umakini wa ingizo. Menyu ya "Matukio" hukuruhusu kuunda kidhibiti cha matukio kiotomatiki kwa matukio haya yote. Ya kawaida zaidi ya haya ni tukio la "Kitendo". (Kwa maelezo zaidi, angalia jinsi ya kushughulikia matukio katika Mafunzo ya Matukio ya Sun Java.)

Je! matukio huchakatwa vipi? Wakati wowote unapochagua tukio kutoka kwa menyu ya tukio, IDE huunda kiotomatiki kile kinachoitwa msikilizaji wa tukio na kukihusisha na kijenzi cha msanidi. Ili kupata maelezo zaidi kuhusu uchakataji wa tukio, fuata hatua hizi:

  1. Rudi kwenye faili ya NumberAdditionUI.java katika kihariri. Bofya kichupo cha "Chanzo" ili kuona msimbo wa chanzo wa GUI.
  2. Sogeza chini ili kuona mbinu zilizotekelezwa za jButton1ActionPerformed() , jButton2ActionPerformed() , na jButton3ActionPerformed(). Njia hizi huitwa washughulikiaji wa hafla.
  3. Sasa nenda kwa initComponents() njia. Ikiwa njia hii haipo, pata mstari wa Msimbo unaozalishwa na ubofye ishara + karibu na mstari huo ili kuonyesha njia iliyofichwa ya initComponents().
  4. Angalia kizuizi cha bluu kinachozunguka njia ya initComponents(). Msimbo huu ulitolewa kiotomatiki na IDE na hauwezi kurekebishwa na mtumiaji.
  5. Sasa angalia initComponents() njia yenyewe. Miongoni mwa mambo mengine, ina msimbo unaoanzisha vipengele vya GUI na kuziweka kwenye fomu. Msimbo huu huzalishwa na kusasishwa kiotomatiki unapoweka na kubadilisha vipengele katika hali ya muundo.
  6. Katika njia ya initComponents(), pata kijisehemu kifuatacho: jButton3.setText("Toka"); jButton3.addActionListener(mpya java.awt.event.ActionListener() ( public void actionPerformed(java.awt.event.ActionEvent evt) ( jButton3ActionPerformed(evt); ) ));

    Kwa wakati huu, kitu cha msikilizaji wa tukio la "ActionListener" kinaongezwa kwenye kipengele cha GUI, katika kesi hii jButton3 . Kiolesura cha "ActionListener" kina mbinu ya "actionPerformed" kwenye kitu cha "ActionEvent", ambayo inatekelezwa kwa kumwita tu kidhibiti cha tukio cha jButton3ActionPerformed. Kitufe hiki sasa kinajibu matukio ya vitendo. Kila wakati kitufe kinapobofya, "ActionEvent" inatolewa na kupitishwa kwa mbinu ya "actionPerformed" ya kiolesura cha msikilizaji wa tukio, ambayo hutekeleza msimbo ambao msanidi alitoa kwa tukio hilo katika kidhibiti cha tukio.

  7. Kadi ya Kujifunza ya Programu za Java GUI

Kiwango cha GUI.

Moja ya mabadiliko muhimu zaidi katika tasnia ya kompyuta ni ujio wa kiolesura cha picha. Kwa hivyo kuna haja ya kupitisha viwango vya GUI ambavyo vinafafanua programu za Windows zinapaswa kuonekanaje? Macintosh na kadhalika. Kuna hata programu za uthibitishaji ambazo wachuuzi hurekebisha programu zao ili kupata beji ya Windows. Hii inafanywa kwa sababu kadhaa.

Moja ya faida za Windows au Mac ni mwonekano wao wa kawaida. Unapojifunza kufanya kazi katika mojawapo yao, fikiria kwamba umeweza kufahamu wengine. Programu nyingi za Windows hutumia kanuni sawa, kwa hivyo unajua jinsi ya kufungua, kuhifadhi, kuchapisha, kufunga na kunakili faili katika yoyote kati yao. Kiolesura cha kawaida ni rahisi sana kwa mtumiaji. Unahitaji kujaribu kufanya programu zako zifanane na programu zingine za Windows ambazo watumiaji tayari wamejifunza kufanya kazi nazo. Kuna kanuni saba za jumla za muundo wa GUI. Ukizijifunza na kuzifuata, muundo wa programu yako utakuwa sawa.

Kanuni saba za muundo wa GUI.

Kanuni saba za jumla za muundo wa GUI zimechukuliwa kutoka kwa Mwongozo wa Kiolesura cha Microsoft Windows. Wanaunda mchoro ambao unaweza kuunda viwango vyako mwenyewe. Muundo huu huwapa watengenezaji na watumiaji faida mbili muhimu. Kwanza kabisa, programu zinaonekana kuwa za kitaalamu. Pili, zinafanya kazi, zinaendana na programu zingine, na ni rahisi kwa watumiaji kujifunza.

Bila shaka, ili maombi yawe na mafanikio, lazima yameandikwa vizuri na yenye manufaa - haya ndiyo mahitaji makuu. Kanuni tunazozungumzia humpa msanidi programu mawazo.

1. Ruhusu mtumiaji kudhibiti programu.

2. Fuata dhana ya kitu/kitendo.

3. Kuwa thabiti.

4. Fanya kutumia programu rahisi na dhahiri.

5. Jitahidi kupata maelewano.

6. Toa maoni ya mtumiaji.

7. Kuwa mpole

Kanuni ya Kwanza: Mpe mtumiaji udhibiti wa programu.

Mtumiaji lazima adhibiti programu, ambayo ni, ufikiaji wa kila moduli ya programu kutoka kwa moduli nyingine yoyote. Hapo awali, orodha ya hierarchical ilitumiwa kwa upatikanaji huo.


Hebu tuseme mtumiaji anataka kuongeza mteja mpya. Katika mfano, mtumiaji lazima aende kwenye sehemu ya ACCOUNTS RECCIEVAble kisha aongeze mteja mpya kutoka hapo. Anajuaje la kufanya? Labda kutokana na uzoefu wangu na programu hii. Na katika ulimwengu wa GUI, mtumiaji anachagua tu amri Mpya kutoka kwa menyu, kisha Mteja, kama inavyoonyeshwa kwenye Mtini. Katika mfumo huu wa kisasa, unaweza kuongeza mteja mpya, muuzaji au orodha ya bidhaa kupitia menyu ya Faili. Hii hukuruhusu kubadilisha rekodi ya mteja ukiwa kwenye skrini ya mfanyabiashara na kinyume chake. Mtumiaji hahitaji tena kuvinjari menyu changamano na zenye kutatanisha za daraja.

Kanuni ya pili: fuata dhana ya kitu/kitendo.

Mtazamo wa kitu/kitendo unasema kuwa operesheni fulani inaweza kufanywa kwa vitu vyote kwenye mfumo. Mfano rahisi na dhahiri zaidi ni skrini ya usaidizi wa hifadhidata ya mteja (Mtini.). Skrini ina seti ya vifungo na kila moja ya chini inakuwezesha kufanya baadhi ya hatua kwenye habari kuhusu mteja aliyechaguliwa. Unaweza kuifuta, kuihariri, kuichapisha, nk. Vitendo vinavyoweza kufanywa kwa mteja fulani lazima vipatikane au visipatikane kwa wakati unaofaa. Kwa mfano, wakati rekodi ya mteja iko katika hali ya kuhariri, vitufe vya Futa na Mpya vinapaswa kuzimwa.

Kanuni ya tatu: kuwa thabiti.

Uthabiti ni mojawapo ya kanuni muhimu zaidi za muundo wa GUI. GUI - ruhusu watumiaji kuchunguza programu zaidi kuliko programu za zamani. Na shukrani hii yote kwa kanuni ya msimamo. Mtumiaji anapokutana na programu mpya, tayari anafahamu amri za msingi: kufungua, kuchapisha na kuhifadhi faili. Maombi yaliyotengenezwa kwenye majukwaa haya kwa kawaida yanawiana.

Kwa hiyo, wakati wa kuunda programu mpya, kuwa thabiti. Ikiwa ulitumia amri Mpya kuongeza ingizo jipya, itumie kila mahali. Neno hili halipaswi kubadilishwa na wengine - kwa mfano, na neno Ongeza 9ongeza). Shukrani kwa uthabiti wako, watumiaji watajua kwamba popote wanapokutana na amri Mpya, inaweza kutumika kuongeza ingizo jipya.

Kanuni ya nne: fanya kutumia programu rahisi na dhahiri.

Njia nyingine ya kueleza wazo hili ni: usitumie jargon. Kuna skrini iliyo na vifungo viwili. Mmoja wao anasema "Pakia hifadhidata", na mwingine anasema "Ondoa rekodi zilizowekwa alama za kufutwa". Ingizo la pili labda litaeleweka zaidi kwa mtumiaji.

Wakati wa kuunda programu, mara nyingi kuna jaribu la kutumia slang ya programu kwenye kiolesura. Jaribu kuepuka hili ikiwezekana.

Kanuni ya Tano: Jitahidini Kupatana

Hata katika nyeusi na nyeupe, skrini hii ina drawback muhimu ya aesthetic: background nyeupe na vitu tofauti juu yake. Katika Mtini. Skrini sawa inaonekana yenye usawa wa rangi.

Kuna mamilioni ya mchanganyiko wa rangi unaweza kuhamisha kwa Windows. Je, hii ina maana kwamba zote zinahitaji kutumiwa? Bila shaka hapana. Unapaswa kuchagua rangi rahisi, za utulivu na uepuke mchanganyiko wao wa machafuko, ambayo kwa sababu fulani baadhi ya waandaaji wa programu wanapenda.

Kanuni ya sita. Toa maoni kwa mtumiaji.

Fikiria kuwa ombi lako lina mchakato unaochukua muda mrefu kutekelezwa. Wakati huu, unaweza kuonyesha ujumbe kwenye skrini na maudhui yafuatayo: "Programu inaendelea, tafadhali subiri." Suluhisho la urahisi; lakini mtumiaji anajuaje kuwa haijagandishwa? Kwa hivyo, kuna uwezekano mkubwa kwamba atatoa programu "saluti ya vidole vitatu" (Ctrl+Alt+Del), ingawa kila kitu kitakuwa sawa na programu.

Ni bora kumwonyesha mtumiaji ni sehemu gani ya mchakato imekamilika. Kisha hatakatiza programu bila sababu, ataweza kutathmini jinsi kazi imeendelea, na kufanya mambo mengine hadi mchakato ukamilike. Kwa hivyo, tija ya mtumiaji itaongezeka kwa takriban asilimia 25. Matokeo haya yanaweza kupatikana kwa kuonyesha tu mita kwenye skrini. Kwa kawaida ujumbe kama vile "rekodi 10 kati ya 100 zimechakatwa" au "40% zimekamilika" huonyeshwa. Bora zaidi ni kuonyesha idadi ya rekodi zilizochakatwa na asilimia yao."

Kanuni ya Saba: Uwe Mwenye Kusamehe

Kila mmoja wetu wakati mwingine amefuta chapisho kwa kubofya kitufe kisicho sahihi. Kwa hiyo, mpe mtumiaji fursa ya kubadilisha mawazo yake au kufuta vitendo vilivyochukuliwa hivi karibuni. Ikiwa mchakato unachukua muda mrefu, kubadilisha data nyingi, au kuhitaji mtumiaji kuhifadhi nakala ya data kabla ya kutekeleza kitendo, unapaswa kutoa onyo. Nimeona programu zinazohitaji uthibitisho mara mbili kisha naomba nenosiri. Je, programu zako zinahitaji kiwango hiki cha ulinzi? Labda. Kazi ya msanidi programu ni kumsaidia mtumiaji ikiwa alifanya makosa katika hatua yoyote ya kazi.

Umuhimu wa kanuni za kawaida za GUI.

Kama unaweza kuona, kanuni za muundo wa GUI ni rahisi sana na zinapaswa kutumika wakati wa kuunda skrini. Hata hivyo, kabla ya kuunda skrini, unahitaji kuanzisha jinsi itaonekana. Chagua saizi zake, fonti, rangi, mitindo ya ujumbe, n.k. Kwa kutatua masuala haya mapema, utaharakisha kazi yako kwa kiasi kikubwa. Inapokuja kwa fonti au mtindo wa ujumbe baadaye, unatazama tu kiwango.

Kanuni ya 2: Punguza mzigo wa mtumiaji

Kanuni ya 3: Fanya interface iendane

Miongozo

Mpango wa Menyu ya Tidy Start

Hitimisho

Fasihi

Utangulizi

"Kanuni kuu ya usanifu ni: "Usiwafanyie wengine kile walichokufanyia." Kumbuka kile ambacho hupendi kuhusu programu unayotumia. Na usifanye jambo lile lile katika programu unayofanyia kazi. ”

Tracy Leonard

Kwa nini unapaswa kufuata kanuni za muundo wa kiolesura cha mtumiaji?

Programu lazima iendelezwe kwa kuzingatia mahitaji na matakwa ya mtumiaji - mfumo lazima ufanane na mtumiaji. Ndiyo maana kanuni za kubuni ni muhimu sana.

Watumiaji wa kompyuta wanaweza kuwa na uzoefu wenye mafanikio ambao huweka ujasiri katika uwezo wao na kujenga kujithamini wakati wa kufanya kazi na kompyuta. Matendo yao na kompyuta yanaweza kujulikana kama "mafanikio huzaa mafanikio." Kila uzoefu mzuri na programu huruhusu mtumiaji kupanua ujuzi wao na programu na kuongeza kiwango chao cha ujuzi. Kiolesura kilichoundwa vizuri, kama mwalimu mzuri na vitabu vya kiada, huhakikisha mwingiliano mzuri kati ya mtumiaji na kompyuta. Miingiliano iliyofanikiwa inaweza hata kumsaidia mtu kutoka kwenye mduara wa kawaida wa programu anazotumia na kugundua mpya, kuimarisha uelewa wake wa jinsi violesura na kompyuta zinavyofanya kazi.

Kanuni za muundo wa kiolesura ni dhana na maoni ya hali ya juu ambayo yanaweza kutumika katika muundo wa programu. Unahitaji kuamua ni kanuni gani ni muhimu zaidi na inayokubalika kwa mfumo wako.

Wakati wa kuanza kubuni, ni muhimu kuonyesha kanuni muhimu zaidi ambayo itakuwa ya maamuzi wakati wa kutafuta maelewano. Kujaribu kufuata kanuni zote za kubuni kunaweza kusababisha ukweli kwamba katika hali fulani hailipi na ina athari mbaya kwa matokeo ya mwisho. Kanuni ni mwongozo wa hatua.

Kanuni tatu za muundo wa kiolesura cha mtumiaji zimeundwa kama ifuatavyo:

1) udhibiti wa mtumiaji wa kiolesura;

2) kupunguza mzigo wa kumbukumbu ya mtumiaji;

3) uthabiti wa kiolesura cha mtumiaji.

Mahali pa Kupata Kanuni za Usanifu wa Kiolesura cha Mtumiaji

Hansen aliwasilisha orodha ya kwanza ya kanuni za muundo. Kanuni ni:

1) kujua mtumiaji;

2) kupunguza kukariri;

3) kuboresha shughuli;

4) kuondoa makosa.

Watengenezaji wengi wakuu wa mfumo wa uendeshaji huchapisha miongozo na maagizo husika wanapotoa bidhaa zao mpya sokoni. Machapisho haya yanafunua kanuni za mbinu ya muundo wa kiolesura. Miongozo hiyo ilitolewa na Apple Computer, Inc. (1992), IBM Corporation (1992), Microsoft Corporation (1995) na UNIX OSF/Motif (1993).

Wasomaji wanaweza kutumia vichapo hivyo kuwa msaada wa kufundishia. Istilahi za kiolesura zinaweza kutofautiana kati ya miongozo, lakini lengo la nyenzo, kiwango cha utata, na kanuni za kiolesura cha mtumiaji zilizoelezwa ni sawa kwa vitabu vyote.

Umuhimu wa kufuata kanuni

"Kutopatana kwa kiolesura kunaweza kugharimu kampuni kubwa mamilioni ya dola katika tija iliyopotea na kuongezeka kwa gharama za usaidizi." - Jessie Briest.

Kanuni hizi zinatumika kwa programu na maunzi yote, katika aina zote na mitindo ya violesura. Zilitengenezwa kwa muda mrefu sana: utafiti ulifanyika katika uwanja wa interface ya programu, maendeleo yalifanyika, na watumiaji wa majukwaa mengi ya kompyuta, ikiwa ni pamoja na Macintosh na PC, walichunguzwa.

Kanuni hizi zimesimama mtihani wa wakati na ujio wa teknolojia mpya za kompyuta. Jakob Nielsen alibainisha: "Kanuni zitabaki kuwa za msingi hata kama programu ina muundo wa 3D wa siku zijazo na DataGlove ya pembejeo, utambuzi wa mwendo na picha za video za moja kwa moja. Zitakuwa muhimu kwa sababu zinaelezea wazo la msingi la mazungumzo na mashine inayotumia. amri."

Ufafanuzi wa kanuni hizi itategemea vifaa, mfumo wa uendeshaji, vipengele vya interface ya mtumiaji na kazi zake. Mara nyingi maamuzi ya biashara hupuuza matumizi ya kanuni za wabunifu. Miundo ya watumiaji na wabunifu pia ni tofauti na huathiri jinsi kanuni zitatumika. Katika hatua fulani muhimu za maendeleo ya mradi, swali linaweza kutokea: "Nini kitatokea baadaye?" Jibu linapaswa kuwa: "Chochote mtumiaji anataka!"

Uamuzi wa kuchagua kanuni bora za kujenga interface inapaswa kuendelezwa kwa pamoja na wanachama wote wa timu ya kubuni. Suluhu hizi zinapaswa kusaidia kuboresha ununuzi na uundaji wa bidhaa za programu.

Sheria za Usanifu wa Kiolesura cha Mtumiaji

"Ifanye iwe rahisi, lakini sio ya zamani zaidi."

Albert Einstein

Kanuni ya 1: Toa udhibiti kwa mtumiaji

Wabunifu wenye uzoefu huruhusu watumiaji kutatua matatizo fulani kwa hiari yao wenyewe. Wasanifu, baada ya kukamilika kwa tata ya majengo, lazima waweke njia za watembea kwa miguu kati yao. Bado hawajui ni wapi hasa watu watavuka tovuti. Kwa hiyo, njia haziwekwa kamwe wakati huo huo na ujenzi wa majengo. Ishara zimewekwa kwenye maeneo kati ya nyumba na maandishi: "Tafadhali tembea kwenye nyasi." Baada ya muda, wajenzi wanarudi na sasa tu, kulingana na "mapenzi" ya idadi ya watu, kujaza njia zilizopigwa na lami.

Kanuni zinazompa mtumiaji udhibiti wa mfumo:

1) tumia njia kwa busara;

2) kutoa mtumiaji fursa ya kuchagua: kazi ama na panya, au keyboard, au mchanganyiko wa wote wawili;

3) kuruhusu mtumiaji kuzingatia tahadhari;

4) onyesha ujumbe ambao utamsaidia katika kazi yake;

5) kuunda hali kwa vitendo vya haraka na vya kubadilishwa, pamoja na maoni;

6) kutoa njia zinazofaa na kutoka;

7) kurekebisha mfumo kwa watumiaji wenye viwango tofauti vya mafunzo;

8) fanya kiolesura cha mtumiaji kueleweka zaidi;

9) kumpa mtumiaji fursa ya kubinafsisha kiolesura kwa kupenda kwao;

10) kuruhusu mtumiaji kuendesha moja kwa moja vitu vya interface;

Tumia modes kwa busara

Njia sio mbaya kila wakati. Inahitajika kumruhusu mtu kuchagua njia anazohitaji. Kiolesura kinapaswa kuwa cha asili sana hivi kwamba mtumiaji anahisi vizuri kufanya kazi nao. Mtumiaji hafikirii juu ya kubadili kuingiza au kuandika upya mode wakati wa kufanya kazi katika processor ya maneno - hii ni ya busara na ya asili.

Ruhusu mtu kutumia kipanya na kibodi

Uwezo wa kufanya kazi na kibodi kwa kutumia kibodi badala ya panya. Hii ina maana kwamba itakuwa rahisi kwa mtumiaji kufanya kazi, yeye tu hawezi kuitumia au hana. Upau wa vidhibiti umeundwa ili kuharakisha kazi yako unapotumia kipanya. Walakini, wakati wa kufanya kazi na kibodi, haziwezi kufikiwa - kwa hali kama hizi, menyu za "kunjuzi" hutolewa.

Ruhusu mtumiaji kubadili umakini

Usiwalazimishe watumiaji kumaliza mifuatano iliyoanzishwa ya vitendo. Wape chaguo - ghairi au uhifadhi data na urejee pale walipoachia. Waruhusu watumiaji wapate fursa ya kudhibiti mchakato wa kufanya kazi katika programu.

Onyesha ujumbe na maandishi ya maelezo

Tumia maneno yanayofaa mtumiaji katika kiolesura chote. Sio lazima kujua kuhusu bits na ka!

Unapaswa kuchagua toni sahihi katika ujumbe na mialiko. Ni muhimu pia kujihakikishia dhidi ya matatizo na makosa. Istilahi duni na sauti isiyo sahihi itasababisha watumiaji kujilaumu kwa makosa yanayotokea.

Toa hatua na maoni ya haraka na yanayoweza kutenduliwa

Kila bidhaa ya programu lazima ijumuishe TENDWA na TENA vitendaji. Mtumiaji anapaswa kufahamishwa kuwa kitendo hakiwezi kutenduliwa na, ikiwezekana, ruhusu hatua mbadala. Fahamisha mtu kila wakati juu ya kile kinachotokea kwa sasa.

Toa njia wazi na za kutoka

Watumiaji wanapaswa kufurahia kufanya kazi na kiolesura cha bidhaa yoyote ya programu. Hata violesura vinavyotumiwa kwenye tasnia havipaswi kumtisha mtumiaji; hapaswi kuogopa kubonyeza vitufe au kwenda kwenye skrini nyingine. Uvamizi wa Mtandao ulionyesha kuwa urambazaji ndio mbinu kuu ya mwingiliano kwenye Mtandao. Ikiwa mtumiaji anaelewa jinsi ya kufikia ukurasa unaohitajika kwenye WWW, basi kuna uwezekano wa asilimia 80 kwamba ataelewa interface. Watu hujifunza mbinu za kivinjari haraka sana.

Kupokea watumiaji walio na viwango tofauti vya ujuzi

Usiwatoe "dhabihu" watumiaji wenye uzoefu kwa manufaa ya watumiaji wa kawaida. Inahitajika kuwapa ufikiaji wa haraka wa kazi za programu. Usiwachoshe kwa hatua nyingi za kutekeleza kitendo ikiwa wamezoea kutumia amri moja ya jumla.

Fanya kiolesura cha mtumiaji "uwazi"

Kiolesura cha mtumiaji ni sehemu ya "kizushi" ya bidhaa ya programu. Kwa mradi mzuri, watumiaji hawajisikii hata "uwepo" wake. Ikiwa imeundwa vibaya, watumiaji watalazimika kuweka hata juhudi nyingi katika kutumia bidhaa ya programu kwa ufanisi. Madhumuni ya kiolesura ni kuwasaidia watu kujisikia kama wako "ndani" ya kompyuta, kuendesha kwa uhuru na kufanya kazi na vitu. Hii inaitwa kiolesura cha "uwazi"!