<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="mk">
	<id>https://wiki.spodeli.org/index.php?action=history&amp;feed=atom&amp;title=Qt_-_Hello_World</id>
	<title>Qt - Hello World - Историја на измените</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.spodeli.org/index.php?action=history&amp;feed=atom&amp;title=Qt_-_Hello_World"/>
	<link rel="alternate" type="text/html" href="https://wiki.spodeli.org/index.php?title=Qt_-_Hello_World&amp;action=history"/>
	<updated>2026-05-30T20:55:32Z</updated>
	<subtitle>Историја на измените на оваа страница на викито</subtitle>
	<generator>MediaWiki 1.39.1</generator>
	<entry>
		<id>https://wiki.spodeli.org/index.php?title=Qt_-_Hello_World&amp;diff=1718&amp;oldid=prev</id>
		<title>Admin: 2 ревизии: initial</title>
		<link rel="alternate" type="text/html" href="https://wiki.spodeli.org/index.php?title=Qt_-_Hello_World&amp;diff=1718&amp;oldid=prev"/>
		<updated>2011-01-29T16:32:09Z</updated>

		<summary type="html">&lt;p&gt;2 ревизии: initial&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;mk&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Претходна преработка&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Преработка од 18:32, 29 јануари 2011&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;mk&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нема разлика)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://wiki.spodeli.org/index.php?title=Qt_-_Hello_World&amp;diff=1717&amp;oldid=prev</id>
		<title>Admin: /* KDE и Qt програмирање */</title>
		<link rel="alternate" type="text/html" href="https://wiki.spodeli.org/index.php?title=Qt_-_Hello_World&amp;diff=1717&amp;oldid=prev"/>
		<updated>2007-02-02T13:53:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;KDE и Qt програмирање&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;mk&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Претходна преработка&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Преработка од 15:53, 2 февруари 2007&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Ред 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ред 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= KDE и Qt програмирање =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= KDE и Qt програмирање =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l17&quot;&gt;Ред 17:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ред 18:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Како поедноставен пример започнуваме со вообичаената прва програма во сите&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Како поедноставен пример започнуваме со вообичаената прва програма во сите&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;програмски јазици. Hello [[Qt - вовед|Qt]] World.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;програмски јазици. Hello [[Qt - вовед|Qt]] World.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Hello Qt World =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Hello Qt World =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://wiki.spodeli.org/index.php?title=Qt_-_Hello_World&amp;diff=1716&amp;oldid=prev</id>
		<title>Admin на 13:53, 2 февруари 2007</title>
		<link rel="alternate" type="text/html" href="https://wiki.spodeli.org/index.php?title=Qt_-_Hello_World&amp;diff=1716&amp;oldid=prev"/>
		<updated>2007-02-02T13:53:09Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Нова страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
= KDE и Qt програмирање =&lt;br /&gt;
&lt;br /&gt;
Покрај основните [[Qt - вовед|Qt]] библиотеки во работата на [[KDE]] постојат и други библиотеки,&lt;br /&gt;
едноставно наречени [[KDE]] библиотеки. Разлика има во методите, во променливите&lt;br /&gt;
што се дефинирани во класите, како и во очигледната разлика на имињата на&lt;br /&gt;
класите. Едните ([[Qt - вовед|Qt]] класите) започнуваат со буквата „Q“ додека имињата на КDE&lt;br /&gt;
класите започнуваат во буквата K. На пример, KApplication, QApplication,&lt;br /&gt;
KMessageBox, QMessageBox...и т.н.&lt;br /&gt;
&lt;br /&gt;
Стручните лица кои работат на развој на [[KDE]] софтвер, препорачуваат да се користат&lt;br /&gt;
[[KDE]] класите при изработка на софтвер за [[KDE]], и како eдинствена причина ја&lt;br /&gt;
наведуваат, задржување на начинот на функционирање, имплементации, па се до&lt;br /&gt;
изгледот на апликациите. Ќе забележите понатаму дека програмите кои ги&lt;br /&gt;
изработувате, нема да се разликуваат од останатите. Ќе ги имаат истите копчиња,&lt;br /&gt;
истите прозорци, истите можности итн.&lt;br /&gt;
Како поедноставен пример започнуваме со вообичаената прва програма во сите&lt;br /&gt;
програмски јазици. Hello [[Qt - вовед|Qt]] World.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Hello Qt World =&lt;br /&gt;
&lt;br /&gt;
Лично кога се работи за изучување на било кој јазик, јас преферирам код како&lt;br /&gt;
пример за да видам, што е напишано и зошто е тоа така. Најпрво би го побарал Hello&lt;br /&gt;
World кодот, па претпоставувам дека тоа го делам со повеќемина. Започнувам со&lt;br /&gt;
едноставен код кој што на екранот ќе извади прозорче со копче на кое ќе пишува&lt;br /&gt;
Hello World. Напрво ги користиме двете вклучни датотеки qapplication.h и&lt;br /&gt;
qpushbutton.h. Потоа следува дефинирање на главната main() функција. Потоа&lt;br /&gt;
телото на тоа што сакаме да се изврши. Кодот би изгледал вака:&lt;br /&gt;
&lt;br /&gt;
  #include &amp;lt;qapplication.h&amp;gt;&lt;br /&gt;
  #include &amp;lt;qpushbutton.h&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
  void main(int argc, char** argv)&lt;br /&gt;
  {&amp;lt;br&amp;gt;&lt;br /&gt;
  QApplication a(argc, argv);&amp;lt;br&amp;gt;&lt;br /&gt;
  QPushButton hello(“Hello World”, 0);&lt;br /&gt;
  hello.resize(120, 40);&amp;lt;br&amp;gt;&lt;br /&gt;
  a.setMainWidget(&amp;amp;hello);&lt;br /&gt;
  hello.show();&lt;br /&gt;
  return a.exec();&amp;lt;br&amp;gt;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
Првите препроцесори ги вклучуваат ''qapplication.h и qpushbutton.h'', во кои се&lt;br /&gt;
дефинирани класите потребни за апликацијата. Пример во првата вклучна датотека&lt;br /&gt;
се дефинирани фонотови, видови на покажувачи (за глувчето), методи кои важат&lt;br /&gt;
за повеќе објекти на класи наследници на QApplication и друго. Во нашиот случај&lt;br /&gt;
кодот ги користи класите QАpplication и QPushButton. Аргументите во главната main()&lt;br /&gt;
функција се argc и argv. Првиот е бројот на аргументите што се задаваат во&lt;br /&gt;
командниот ред при компајлирање на кодот, а другиот е низа во која се сместуваат&lt;br /&gt;
тие аргументи. Следната линија, QApplication a(argc, argv); дефинира објект oд&lt;br /&gt;
тип QАpplication. Потоа следува QPushButton hello(“Hello World”, 0);, дефиниција на&lt;br /&gt;
објект “hello”, oд тип QPushButton, кој има два аргументи, првиот е стринг т.е. тоа&lt;br /&gt;
што треба да го пишува на копчето, но не и името на копчето, името е дадено преку&lt;br /&gt;
името на објектот, во случајот “hello”. Вториот аргумент е 0, што ни кажува дека&lt;br /&gt;
објектот hello, во прозорчето треба да си е самостоен објект, да го завзема целотo&lt;br /&gt;
прозорче. Во случај да наместо 0 стои име на друг објект, тогаш објектот hello ќе&lt;br /&gt;
биде сместен во тој објект (Повеќе за фамилијата на [[Qt - вовед|Qt]] ќе зборуваме понатаму).&lt;br /&gt;
Пример, hello(“Hello World”, &amp;amp;box), каде box е претходно дефиниран објект, да&lt;br /&gt;
речиме од класа QVBox (подетално за овие работи во следните продолженија каде ќе&lt;br /&gt;
пишувам за фамилиите на [[Qt - вовед|Qt]] апликациите). Одиме натаму и стигнуваме до&lt;br /&gt;
hello.resize(120, 40); со што му задаваме големина на копчето (објектот) hello.&lt;br /&gt;
Доколку овој ред не постои тогаш копчето ќе си биде со стандардните димензии,&lt;br /&gt;
минимално (0,0). Методот “resize” (дефиниран во QApplication), како и што се гледа&lt;br /&gt;
прима два аргументи, должината на X и Y координатите на копчето, во пиксели.&lt;br /&gt;
Следните три линии од кодот се наоѓаат речиси во сите [[Qt - вовед|Qt]] кодови, ако не вака како&lt;br /&gt;
што се дадени овде, барем слично. (12) e ред со кој како главен објект во прозорчето&lt;br /&gt;
(објектот) “а” го поставуваме објектот “hello”, кој го дефиниравме претходно. Не е&lt;br /&gt;
задолжително поставување на главен објект во некој прозорец, но најчесто тоа е&lt;br /&gt;
случај. За да стане видлив објектот “hello”, му правиме hello.show(); инаку по&lt;br /&gt;
дефинирањето, т.е. креирањето, тој е невидлив објект. Методот еxec() е дефиниран&lt;br /&gt;
во QApplication и покрај тоа што треба да ја врати извршената вредност на “a”&lt;br /&gt;
(дефиниран според погорните редови) исто работа му е да си чека (да врти, loop)&lt;br /&gt;
додека не е повикана друга функција, од типот на exit() или quit() при што враќа 0&lt;br /&gt;
или 1. Кодот е веќе спремен за превод.&lt;br /&gt;
&lt;br /&gt;
= Преведување на Qt код =&lt;br /&gt;
&lt;br /&gt;
Прво треба да се направи датотека hello.pro, која претставува проект за кодот, за&lt;br /&gt;
која ќе направиме Makefile. Доколку сте го зачувале кодот во датотека hello.cpp, која&lt;br /&gt;
сте ја сместиле во директориум hello тогаш, за да се компајлира извршна датотека,&lt;br /&gt;
одете во директориумот hello па преку команда “qmake -project” се создава&lt;br /&gt;
датотеката hello.pro (бараната проект-датотека), потоа преку команда “qmake -o&lt;br /&gt;
Makefile hello.pro” во истиот директориум се создава датотека Мakefile, и на крај со&lt;br /&gt;
„make“ ја „правиме“ извршната датотека. Сето тоа ако e во ред треба да изгледа&lt;br /&gt;
вака:&lt;br /&gt;
&lt;br /&gt;
  # cd hello&lt;br /&gt;
  # qmake -project&lt;br /&gt;
  # qmake -o Makefile hello.pro&lt;br /&gt;
  # make&lt;br /&gt;
&lt;br /&gt;
  g++ -c -pipe -Wall -W -O2 -D QT_NO_DEBUG -I/usr/local/qt/mkspecs/default -I. -I. -I &lt;br /&gt;
  /usr/local/qt/include -o hello.o hello.cpp&lt;br /&gt;
  g++ -o hello hello.o -Wl,-rpath,/usr/local/qt/lib -L/usr/local/qt/lib -L/usr/X11R6/lib -lqt -lXext -lX11 -lm&lt;br /&gt;
&lt;br /&gt;
  # ./hello&lt;br /&gt;
&lt;br /&gt;
Редовите што се појавуваат под „make” не јавуваат грешка, такашто ако ја&lt;br /&gt;
стартуваме извршната датотека ./hello, ќе го добиеме посакуваниот прозорец.&lt;br /&gt;
Начинот за компајлирање е речиси секогаш идентичен, се зависи од тоа што сакаме&lt;br /&gt;
и каде, да добиеме. Постојат и други варијации на командата qmake за правење на&lt;br /&gt;
Makefile или проект-датотека, кои подоцна ќе ги разгледаме, а исто така за&lt;br /&gt;
преведување на вашите програми најкористен метод меѓу програмерите е средината&lt;br /&gt;
за развој KDevelop. Конфигурирање, изработка и се друго што е потребно за да&lt;br /&gt;
функционира вашата програма, сето тоа автоматизирано. Причината што постои овој&lt;br /&gt;
принцип за превод на програми, е компатибилноста на програмите со различни&lt;br /&gt;
оперативни системи и платформи. Едноставно на овој начин корисникот ќе биде&lt;br /&gt;
известен дека има грешка во тоа и тоа, дека треба да се направи тоа и тоа и се&lt;br /&gt;
разбира тоа не секогаш е случај на решение. Да не навлегувам уште од сега&lt;br /&gt;
подлабоко, програмите ќе ги преведуваме како што објаснав погоре, со некои&lt;br /&gt;
додатни измени. Посвојствен начин за преведување на вашите програми е преку&lt;br /&gt;
qmake бидејќи и таа команда е дел од [[Qt - вовед|Qt]].&lt;br /&gt;
&lt;br /&gt;
= Содржина на Makefile и Проект-датотеката =&lt;br /&gt;
&lt;br /&gt;
==  Makefile ==&lt;br /&gt;
&lt;br /&gt;
Кога ќе ја направите (генерирате) Makefile датотеката, во неа се сместуваат некои&lt;br /&gt;
команди кои треба да се извршат пред да се преведи кодот, се задаваат вредности на&lt;br /&gt;
глобални променливи и сл. Истите тие можат да се извршат и преку конзола, т.е. да&lt;br /&gt;
ги извршите како едноставни *nix команди. Што ви кажува тоа? Се разбира, Makefile&lt;br /&gt;
претставува шел скрипта, која има за цел да посочи каде се наоѓаат одредени&lt;br /&gt;
директориуми, кои датотеки треба да се преведуваат, каде се наоѓаат вклучните&lt;br /&gt;
датотеки кои се вклучени во вашата програма и слично. Тука се правилата според&lt;br /&gt;
кои можете да го завршите процесот на преведување, да ја од-инсталирате&lt;br /&gt;
програмата, или да направите clean или distclean, со што ќе се исчистат претходните&lt;br /&gt;
конфигурирања кои се направени (на пример преку скриптата configure). И покрај&lt;br /&gt;
тоа што содржи и други команди најбитни се двете променливи кои примаат патеки&lt;br /&gt;
до одредени директориуми:&lt;br /&gt;
&lt;br /&gt;
  # QTDIR=/usr/local/lib&lt;br /&gt;
  # KDEDIR=/usr/lib/kde&lt;br /&gt;
&lt;br /&gt;
Во првиот ред се дефинира директориумот каде што се наоѓаат [[Qt - вовед|Qt]] библиотеките, а во&lt;br /&gt;
вториот ред се дефинира пак директориумот каде што се наоѓаат вашите [[KDE]]&lt;br /&gt;
библиотеки и другите потребни датотеки. Кога ќе направите make можете да&lt;br /&gt;
забележите дека при преведувањето, преведувачот не ги користи целите патеки, ами&lt;br /&gt;
само овие две променливи. Исто така понатаму во оваа датотека се дефинирани&lt;br /&gt;
местата каде што се изворните датотеки за проектот, кој преведувач се користи,&lt;br /&gt;
суфиксите на датотеките и слични други работи.&lt;br /&gt;
&lt;br /&gt;
Оние кои се запознати со работата на Linux базираните оперативни системи, знаат и што се [[gpp|g++]] и [[gcc]]. Тоа се првичните преведувачи за [[gcc]].&lt;br /&gt;
&lt;br /&gt;
[[gcc]]/[[gpp|g++]] кои доаѓаат со Linux кернелот уште од самиот почеток. Ние не ги&lt;br /&gt;
користиме директно, меѓутоа кога ќе ја извршиме командата make, се повикуваат&lt;br /&gt;
овие преведувачи.&lt;br /&gt;
&lt;br /&gt;
== Проект-датотеката hello.pro ==&lt;br /&gt;
&lt;br /&gt;
Ова што ќе го објаснам, во глобала важи и за останатите проект-датотеки.&lt;br /&gt;
Малите разлики лежат во тоа какви програми се напишани и за што би се користеле&lt;br /&gt;
тие. На пример, нашата програма hello користи проект-датотека (hello.pro), која ја&lt;br /&gt;
формиравме погоре, и која ја има следната содржина:&lt;br /&gt;
&lt;br /&gt;
# TEMPLATE = app&lt;br /&gt;
# CONFIG -= moc&lt;br /&gt;
# INCLUDEPATH += .&lt;br /&gt;
# # Input&lt;br /&gt;
# SOURCES += hello.cpp&lt;br /&gt;
&lt;br /&gt;
Што сето ова значи? Во првиот ред (1) како шаблон (анг. Template) се користи app,&lt;br /&gt;
а како конфигурациона (2) алатка МОС (повеќе за овие алатки и шаблони/шеми во&lt;br /&gt;
следите делови на упатствата). Директориумот каде што се вклучени хедерите се&lt;br /&gt;
одредува во третиот ред (3), во случајот тоа е точка, тековниот директориум. Во&lt;br /&gt;
четвртиот ред (4) му кажуваме на преведувачот, која е изворната датотека што треба&lt;br /&gt;
да ја преведе.&lt;br /&gt;
&lt;br /&gt;
= Интегрирана Развојна Средина или Дизајнер? =&lt;br /&gt;
&lt;br /&gt;
За време на вашето програмирање и целосно продлабочување во концептите и&lt;br /&gt;
начините на работа со [[Qt - вовед|Qt]] ќе сфатите дека постојат полесни начини за пишување на&lt;br /&gt;
кодот, од тој што вие го користите. Или пак, потешки принципи за кои ќе се&lt;br /&gt;
прашувате „Зошто да го користам тоа, кога со ова е полесно?“.&lt;br /&gt;
&lt;br /&gt;
Но една работа или непишано правило гласи: Со тоа што ќе започнете, со тоа и ќе&lt;br /&gt;
продолжите.&lt;br /&gt;
За да работите со [[KDevelop]] од постарите верзии (пред да излезе [[Qt - вовед|Qt]] 4.0) мора да го&lt;br /&gt;
пишувате целиот код. Мора да ги правите вашите програми целосно пишувајќи ја&lt;br /&gt;
секоја линија. За нашата последна програма тоа е сосема лесно, таа се состои од мал&lt;br /&gt;
број линии на код, но замислете дека правите клиент за е-пошта. Како би изгледало&lt;br /&gt;
да го пишувате тој код рачно. И што ако некои линии се повторуваат за секој ваш&lt;br /&gt;
проект? Нели би било полесно тој код да се генерира од друга алатка/програма, која&lt;br /&gt;
едноставно ви ја олеснува работата максимално. Таква алатка е [[Qt - вовед|Qt]] Designer,&lt;br /&gt;
едноставна, брза, стабилна, со сите можности што ги нуди [[Qt - вовед|Qt]] како целина. Формите&lt;br /&gt;
ги генерирате, копчињата и другите слични објекти ги цртате, а функционирањето на&lt;br /&gt;
програмата ја пишувате вие. Се е визуелно. Но тоа е сепак дизајнер, не е IDE.&lt;br /&gt;
Дизајнерот работи со UI датотеки (пример form1.ui), во кои сместува [[XML]] код, кој&lt;br /&gt;
дефинира форма, имиња, својства и слично. UI доаѓа од User Interface (мкд.&lt;br /&gt;
кориснички интерфејс). Овие датотеки, со оваа наставка, се генерираат од самиот&lt;br /&gt;
Дизајнер. Датотеките во кои вие го пишувате кодот, методите, слотовите,&lt;br /&gt;
конструктори, деструктори, и друго, се со наставка .ui.h (пример form1.ui.h) и се&lt;br /&gt;
наоѓаат таму каде што ќе ги зачувате (предефинирано се зачувуваат во тековниот&lt;br /&gt;
директориум. Исто таму се зачувуваат и UI датотеките).&lt;br /&gt;
&lt;br /&gt;
Во тековниот директориум на вашата програма, постојат три (предефинирани)&lt;br /&gt;
под-директориуми. Dir/.ui (1), Dir/.obj (2) и Dir/.moc (3). Првиот (1) е генериран од&lt;br /&gt;
Дизајнерот и во него се сместини датотеките во кои е извршена декларација и&lt;br /&gt;
имплементација на употребените класи/променливи во нашиот проект. Вториот (2)&lt;br /&gt;
директориум ги „прибира“ објектите креирани при преводот или мета поврзувањето&lt;br /&gt;
на објектите. Во третиот (3) се ставени датотеки потребни и генерирани од МОС&lt;br /&gt;
алатката, како и датотеки во кои е извршено поврзување на сигналите и слотовите&lt;br /&gt;
(за сигнали-слотови ќе зборуваме покасно).&lt;br /&gt;
Значи да заокружиме дека најголем дел од примерите овде, ќе бидат работени преку&lt;br /&gt;
Дизајнерот. Се активира преку конзола:&lt;br /&gt;
&lt;br /&gt;
  # designer &amp;amp;&lt;br /&gt;
&lt;br /&gt;
или пак од некое мени. Локација на оваа алатка е $QTDIR/bin/designer.&lt;br /&gt;
&lt;br /&gt;
[[Категорија:Cpp]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>