Difference between revisions of "Qt/CallANormalFunction"

From ProgrammingExamples
< Qt
Jump to: navigation, search
(Created page with '==CallAFunction.cpp== <source lang="cpp"> #include <qpushbutton.h> #include <qapplication.h> #include "Foo.h" void MyFunction() { std::cout << "hi" << std::endl; } int main(…')
 
m (CMakeLists.txt)
 
Line 50: Line 50:
  
 
==CMakeLists.txt==
 
==CMakeLists.txt==
<source lang="text">
+
<source lang="cmake">
 
cmake_minimum_required(VERSION 2.6)
 
cmake_minimum_required(VERSION 2.6)
  

Latest revision as of 20:25, 6 November 2010

CallAFunction.cpp

#include <qpushbutton.h>
#include <qapplication.h>
 
#include "Foo.h"
 
void MyFunction()
{
  std::cout << "hi" << std::endl;
}
 
int main(int argc, char **argv)
{
  QApplication a(argc, argv);
 
  Foo foo;
  QPushButton myButton( "Click me", 0);
 
  QObject::connect(&myButton, SIGNAL(clicked()), &foo, SLOT(bar()));
 
  myButton.show();
  return a.exec();
}

foo.h

#ifndef FOO_HPP
#define FOO_HPP
 
#include <qobject.h>
#include <iostream>
 
void MyFunction();
 
class Foo : public QObject
{
  Q_OBJECT
  public slots:
    void bar()
    {
      MyFunction();
    }
};
 
 
#endif // FOO_HPP

CMakeLists.txt

cmake_minimum_required(VERSION 2.6)
 
PROJECT(CallAFunction)
 
FIND_PACKAGE(Qt4 REQUIRED)
INCLUDE(${QT_USE_FILE})
 
QT4_WRAP_CPP(MOCSrcs  Foo.h)
ADD_EXECUTABLE(CallAFunction CallAFunction.cpp ${MOCSrcs} )
 
#this does not work
#ADD_EXECUTABLE(CallAFunction CallAFunction.cpp Foo.h)
 
TARGET_LINK_LIBRARIES(CallAFunction ${QT_LIBRARIES})