Основна одлика програма заснованих на прозорима јесте сама комуникација на релацији корисник-апликација. За разлику од програма командног типа где се проблем уноси искључиво преко тастатуре у виду одређених команди и чије решење добијамо у истом облику као и унос, код програма заснованих на прозорима уочавамо и друге визуелне компоненте које су од суштинског значаја. То су најчешће дугмад, оквири за текст, менији, и слично. Помоћу тих компоненти корисник управња радом апликације и прима информације од апликације.
Графичка разлика између ова два начина програмирања је приказана на упоредним сликама 2.4. и 2.5. где нам слика 2.4. приказује како се некада програмирало у графичком окружењу командног типа Turbo Pascal, а слика 2.5. нам приказује једно модерно програмирање са елементима графичког корисничког интерфејса у окружењу Eclipse где се најчешће програмира Java програмски језик.
Слика 2.4. Turbo Pascal | Слика 2.5. Eclipse |
Свака апликација мора имати минимум један прозор који се обично назива main window. Наравно, поред њега може да постоји и неколико других прозора који се називају secondary windows. Главна разлика ових двеју врста прозора јесте у значају па самим тим и у положају на екрану. Главни прозор је увек приказан на екрану док се секундарни прозори по потреби појављују и нестају са екрана сходно потреби у том тренутку. Конкретно, једна специјална врста секундарних прозора јесте прозор за дијалог, dial box. Прозор за дијалог се иначе појављује када се кориснику требају саопштити разне поруке које су од значаја у том тренутку. Значај ових прозора је толики да докле год корисник не затвори овај прозор не може даље наставити са радом. То наравно значи да докле год се не обрати пажња која је порука исписана не може се наставити са даљим радом.
Уколико је у апликацији потребно радити истовремено са више прозора, они ће бити отворени један преко другог где се тренутно активни прозор једини види у целости, а остали су испод њега по редоследу како су отварани. Наравно, увек је могуће променити позицију самих прозора као и њихову величину уз помоћ миша, чији ћемо значај и функцију свакако обрадити.
Дакле, основни начин за управљње самом апликацијом и компонентама у њој јесте помоћу миша. То је такође једна од главних разлика између програма командног типа и програма заснованих на прозорима. Место на коме може да се делује мишем обележава се показивачем миша, mouse cursor. Тако, у зависности од функције која је тренутно додељена курсору, он може бити различито графички представљен. Најчешће је у облику стрелице.
Постоје две основне радње које могу да се обаве помоћу миша а то су притисак click и одвлачење drag and drop. Нећемо детаљно објашњавати ове две радње.
Поред миша, апликацијом можемо да управљамо и преко тастатуре. Код програма заснованих на прозорима основна употреба тастатуре јесте само за уношење текста у оквире за текст. Показивач текста тј. место у тексту на коме може нешто да се промени назива се text cursor. Она је графички представљена као вертикална трептећа линија. Под неким условима преко тастатуре можемо да производимо ефекте миша уз комбинацију специјалних тастера Alt и Ctrl са одређеним тастерима са словима.