Difference between revisions of "Development/Tutorials/Printing Hello World"

Jump to: navigation, search
(To build and run it, make sure you have your build environment set up correctly as described)
Line 3: Line 3:
 
Print '''Hello World''' on your printer. There will be no more dialog to confirm how many pages you want or the like.
 
Print '''Hello World''' on your printer. There will be no more dialog to confirm how many pages you want or the like.
  
== The code ==
+
== The files ==
 
'''main.cpp'''
 
'''main.cpp'''
 
<syntaxhighlight lang="cpp-qt" line>
 
<syntaxhighlight lang="cpp-qt" line>
Line 55: Line 55:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
== How to compile ==
+
'''CMakeLists.txt'''
 
+
=== CMakeLists.txt ===
+
 
+
 
<syntaxhighlight lang="text">
 
<syntaxhighlight lang="text">
 
find_package(KDE4 REQUIRED)
 
find_package(KDE4 REQUIRED)
Line 67: Line 64:
  
 
=== Make and Run ===
 
=== Make and Run ===
To build and run it, do:
+
To build and run it, make sure you have your build environment set up correctly as described [[Getting_Started/Build|here]], then do:
 
  cmake .
 
  cmake .
 
  make
 
  make

Revision as of 19:08, 25 September 2011

The mission

Print Hello World on your printer. There will be no more dialog to confirm how many pages you want or the like.

The files

main.cpp

  1. #include <qpainter.h>
  2. #include <qprinter.h>
  3. #include <kapplication.h>
  4. #include <kaboutdata.h>
  5. #include <kmessagebox.h>
  6. #include <kcmdlineargs.h>
  7.  
  8. /*
  9. This prints Hello World on your printer
  10. */
  11.  
  12. int main(int argc, char *argv[])
  13. {
  14.     KAboutData aboutData(
  15.                          // The program name used internally.
  16.                          "tutorial-printing",
  17.                          // The message catalog name
  18.                          // If null, program name is used instead.
  19.                          0,
  20.                          // A displayable program name string.
  21.                          ki18n("Printing Tutorial"),
  22.                          // The program version string.
  23.                          "1.0",
  24.                          // Short description of what the app does.
  25.                          ki18n("Displays a KMessageBox popup"),
  26.                          // The license this code is released under
  27.                          KAboutData::License_GPL,
  28.                          // Copyright Statement
  29.                          ki18n("(c) 2006-2011"),
  30.                          // Optional text shown in the About box.
  31.                          // Can contain any information desired.
  32.                          ki18n("Some text..."),
  33.                          // The program homepage string.
  34.                          "http://example.com/",
  35.                          // The bug report email address
  36.                          "submit@bugs.kde.org");
  37.     KCmdLineArgs::init( argc, argv, &aboutData );
  38.     KApplication app;
  39.  
  40.     QPrinter printer;
  41.     printer.setFullPage(true);
  42.     QPainter painter;
  43.     painter.begin(&printer);
  44.     painter.drawText(100,100,"Hello World");
  45.     painter.end(); 
  46.     // this makes the print job start
  47. }

CMakeLists.txt

find_package(KDE4 REQUIRED)
include_directories( ${KDE4_INCLUDES} )
kde4_add_executable(printhelloworld main.cpp)
target_link_libraries(printhelloworld ${KDE4_KDEUI_LIBS} ${QT_QTGUI_LIBRARY})

Make and Run

To build and run it, make sure you have your build environment set up correctly as described here, then do:

cmake .
make
./printhelloworld

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal