Windows Programming in C++

Size: px
Start display at page:

Download "Windows Programming in C++"

Transcription

1 Windows Programming in C++ You must use special libraries (aka APIs application programming interfaces) to make something other than a text-based program. The C++ choices are: The original Windows SDK (Software Development Kit), a C library MFC (Microsoft Foundation Classes), a sophisticated wrapper around the Windows SDK ATL (Active Template Library), a lightduty wrapper around the Windows SDK.NET, Microsoft's new technology

2 Why Use the Windows SDK? Games generally take over the whole screen Windows SDK is the simplest route to getting to the point where the screen has been taken over.net not univerally installed yet We cover MFC/ATL/.NET in other courses

3 Basic Windows SDK Concepts Write a WinMain(), not a classical main() #include <windows.h> and probably <windowsx.h> Often #define WIN32_LEAN_AND_MEAN before those #includes to cut down on further #includes of rarely used header files Use many #define- and typedef-created data types from those header files (e.g. BOOL, HWND) Use MS-specific declaration modifiers (e.g. WINAPI, CALLBACK) for functions

4 Basic Windows SDK Concepts Some Data Types are: BOOL - a boolean value (TRUE or FALSE) HWND - handle to a window UINT - unsigned integer (32 bit) WPARAM - word parameter (32 bit, originally 16, for passing an integer value, for example) LPARAM - long parameter (32 bit, for passing an address, for example) LRESULT - 32 bit return code from a function HINSTANCE - handle to a running instance of a program

5 Messages MS Windows uses Messages to communicate with the windows in a program Every window in a windows program (which includes Controls, which are preprogrammed sub-windows like buttons and list boxes) has a Window Procedure, which is the code to handle any message that may be sent to the window A window is customized by writing a custom window procedure for it, and supplying that procedure's address to Windows, which will call the procedure when needed.

6 Messages A window procedure is passed four things: An HWND, identifying the window for whom the message is intended A UINT, identifying which message it is A WPARAM, containing a piece of data An LPARAM, containing another piece of data (typically a pointer to more data, but not necessarily) The WPARAM and LPARAM meaning and usage varies between different messages

7 Messages Messages can come from: Windows, based on user interaction or some other operating system activity Another window (in the same program or another) The program code itself, using either SendMessage() (waits until message is handled) or PostMessage() (puts the message on a queue but doesn't wait for it to be handled)

8 Messages Controls (like buttons) have a window procedure that you don't see Controls will send a WM_COMMAND message to the parent window when the user interacts with them, its WPARAM identifies the control and the operation Macros LOWORD() and HIWORD() can extract the low- and high-order 16 bits of a WPARAM or LPARAM (or you can do the bit manipulation operations yourself)

9 Dialogs A Dialog is a pop-up window that typically contains a bunch of controls A dialog can be laid out using a resource file (extension.rc) to describe the controls, rather than creating the controls from within the C++ code A header file is typically used to interlink the C++ code with the resource code by using symbolic names for IDs, since both languages understand the #define and #include syntax

10 Dialogs A dialog is supplied the address of a Dialog Procedure, which is a window procedure specifically designed to handle a dialog (return value is BOOL rather than LRESULT) Can get the HWND of a control on a dialog using GetDlgItem() Can send a message to a control on a dialog using SendDlgItemMessage() or PostDlgItemMessage() [alternative to calling GetDlgItem() then Send/PostMessage()]

11 Dialogs WM_INITDIALOG is the ID of the message sent to a dialog just after it is first created, giving you a chance to initialize its controls and do other one-time setup WM_COMMAND is the ID of the message sent to a window when (among other things) one of its controls (ID in low order 16 bits of WPARAM) has something to pass along IDCANCEL is a predefined control ID that corresponds to a user request to close the window

12 Dialogs Each kind of control has different messages that can be sent to it E.g. CB_GETCURSEL is the ID of the message you send to a ComboBox to get the index of the item in the combobox that is currently selected E.g. LB_ADDSTRING is the ID of the message you send to a ListBox to add another string (passed in the LPARAM) to the listbox

13 Dialogs Dialogs can be modal (application waits until dialog has been completed) or not (dialog and other application windows can be used at the same time) Modal dialogs can be created by calling DialogBox() Modal dialogs should be terminated by calling EndDialog()

LSN 4 GUI Programming Using The WIN32 API

LSN 4 GUI Programming Using The WIN32 API LSN 4 GUI Programming Using The WIN32 API ECT362 Operating Systems Department of Engineering Technology LSN 4 Why program GUIs? This application will help introduce you to using the Win32 API Gain familiarity

More information

C Windows 16. Visual C++ VC Borland C++ Compiler BCC 2. Windows. c:\develop

C Windows 16. Visual C++ VC Borland C++ Compiler BCC 2. Windows. c:\develop Windows Ver1.01 1 VC BCC DOS C C Windows 16 Windows98/Me/2000/XP MFC SDL Easy Link Library Visual C++ VC Borland C++ Compiler BCC 2 2 VC MFC VC VC BCC Windows DOS MS-DOS VC BCC VC BCC VC 2 BCC5.5.1 c:\develop

More information

Different Ways of Writing Windows Programs

Different Ways of Writing Windows Programs How Windows Works Notes for CS130 Dr. Beeson Event-Driven Programming. In Windows, and also in Java applets and Mac programs, the program responds to user-initiated events: mouse clicks and key presses.

More information

Programming in graphical environment. Introduction

Programming in graphical environment. Introduction Programming in graphical environment Introduction The lecture Additional resources available at: http://www.mini.pw.edu.pl/~maczewsk/windows_2004 Recommended books: Programming Windows - Charles Petzold

More information

Chapter 15 Programming Paradigm

Chapter 15 Programming Paradigm Chapter 15 Programming Paradigm A Windows program, like any other interactive program, is for the most part inputdriven. However, the input of a Windows program is conveniently predigested by the operating

More information

Windows Programming. 1 st Week, 2011

Windows Programming. 1 st Week, 2011 Windows Programming 1 st Week, 2011 시작하기 Visual Studio 2008 새프로젝트 파일 새로만들기 프로젝트 Visual C++ 프로젝트 Win32 프로젝트 빈프로젝트 응용프로그램설정 Prac01 솔루션 새항목추가 C++ 파일 main.cpp main0.cpp cpp 다운로드 솔루션빌드 오류 Unicode vs. Multi-Byte

More information

#include <commctrl.h> #include "resource.h" #include "paintpic.h" //----- Global Variables

#include <commctrl.h> #include resource.h #include paintpic.h //----- Global Variables /* I M A G E D I T. C */ /* Task : Demonstration of the use of ImageLists */ /* Authors : Michael Tischer and Bruno Jennrich */ /* developed on : 10/15/1995 */ /* last update : 10/18/1995 */ #include

More information

CS410 Visual Programming Solved Online Quiz No. 01, 02, 03 and 04. For Final Term Exam Preparation by Virtualians Social Network

CS410 Visual Programming Solved Online Quiz No. 01, 02, 03 and 04. For Final Term Exam Preparation by Virtualians Social Network CS410 Visual Programming Solved Online Quiz No. 01, 02, 03 and 04 For Final Term Exam Preparation by Virtualians Social Network 1. Ptr -> age is equivalent to *ptr.age ptr.age (ptr).age (*ptr).age 2. is

More information

Windows and Messages. Creating the Window

Windows and Messages. Creating the Window Windows and Messages In the first two chapters, the sample programs used the MessageBox function to deliver text output to the user. The MessageBox function creates a "window." In Windows, the word "window"

More information

uvi ... Universal Validator Interface Software Developers Kit Revision /29/04 Happ Controls

uvi ... Universal Validator Interface Software Developers Kit Revision /29/04 Happ Controls Happ Controls 106 Garlisch Drive Elk Grove, IL 60007 Tel: 888-289-4277 / 847-593-6130 Fax: 847-593-6137 www.happcontrols.com uvi Universal Validator Interface Software Developers Kit.......... Revision

More information

Game Programming Genesis Part II : Using Resources in Win32 Programs by Joseph "Ironblayde" Farrell

Game Programming Genesis Part II : Using Resources in Win32 Programs by Joseph Ironblayde Farrell Game Programming Genesis Part II : Using Resources in Win32 Programs GameDev.net Introduction Game Programming Genesis Part II : Using Resources in Win32 Programs by Joseph "Ironblayde" Farrell Welcome

More information

MOBILE COMPUTING Practical 1: Graphic representation

MOBILE COMPUTING Practical 1: Graphic representation MOBILE COMPUTING Practical 1: Graphic representation Steps 2) Then in class view select the Global, in global select the WINMAIN. 3) Then write the below code below #define MAX_LOADSTRING 100 enum Shapes

More information

We display some text in the middle of a window, and see how the text remains there whenever the window is re-sized or moved.

We display some text in the middle of a window, and see how the text remains there whenever the window is re-sized or moved. 1 Programming Windows Terry Marris January 2013 2 Hello Windows We display some text in the middle of a window, and see how the text remains there whenever the window is re-sized or moved. 2.1 Hello Windows

More information

Lecture 5: Introducing Dialog Boxes & Child Window Controls for Win 32 API

Lecture 5: Introducing Dialog Boxes & Child Window Controls for Win 32 API Lecture 5: Introducing Dialog Boxes & Child Window Controls for Win 32 API What is Dialog Box? How to make your project to have a Dialog Box Modal Dialog Modeless Dialog WM_INITDIALOG Child Window Controls

More information

Digital Storage Oscilloscope. Appendix

Digital Storage Oscilloscope. Appendix Digital Storage Oscilloscope Appendix Thomas Grocutt April 2000 Contents 8) Appendix 1 8.1) DSO Control Software 1 8.1.1) Main.c 1 8.1.2) Main.h 3 8.1.3) GUI.c 4 8.1.4) Gui.h 33 8.1.5) Plot_Data.c 35 8.1.6)

More information

Game Programming I. Introduction to Windows Programming. Sample Program hello.cpp. 5 th Week,

Game Programming I. Introduction to Windows Programming. Sample Program hello.cpp. 5 th Week, Game Programming I Introduction to Windows Programming 5 th Week, 2007 Sample Program hello.cpp Microsoft Visual Studio.Net File New Project Visual C++ Win32 Win32 Project Application Settings Empty project

More information

Front Panel: Free Kit for Prototyping Embedded Systems on Windows

Front Panel: Free Kit for Prototyping Embedded Systems on Windows QP state machine frameworks for Microsoft Windows Front Panel: Document Revision D February 2015 Copyright Quantum Leaps, LLC info@state-machine.com www.state-machine.com Table of Contents 1 Introduction...

More information

Advantech Windows CE.net Application Hand on Lab

Advantech Windows CE.net Application Hand on Lab Advantech Windows CE.net Application Hand on Lab Lab : Serial Port Communication Objectives After completing this lab, you will be able to: Create an application to open, initialize the serial port, and

More information

Call DLL from Limnor Applications

Call DLL from Limnor Applications Call DLL from Limnor Applications There is a lot of computer software in the format of dynamic link libraries (DLL). DLLCaller performer allows your applications to call DLL functions directly. Here we

More information

Key Switch Control Software Windows driver software for Touch Panel Classembly Devices

Key Switch Control Software Windows driver software for Touch Panel Classembly Devices IFKSMGR.WIN Key Switch Control Software Windows driver software for Touch Panel Classembly Devices Help for Windows www.interface.co.jp Contents Chapter 1 Introduction 3 1.1 Overview... 3 1.2 Features...

More information

Computer Programming Lecture 11 이윤진서울대학교

Computer Programming Lecture 11 이윤진서울대학교 Computer Programming Lecture 11 이윤진서울대학교 2007.1.24. 24 Slide Credits 엄현상교수님 서울대학교컴퓨터공학부 Computer Programming, g, 2007 봄학기 Object-Oriented Programming (2) 순서 Java Q&A Java 개요 Object-Oriented Oriented Programming

More information

hinstance = ((LPCREATESTRUCT)lParam)->hInstance obtains the program's instance handle and stores it in the static variable, hinstance.

hinstance = ((LPCREATESTRUCT)lParam)->hInstance obtains the program's instance handle and stores it in the static variable, hinstance. 1 Programming Windows Terry Marris Jan 2013 6 Menus Three programs are presented in this chapter, each one building on the preceding program. In the first, the beginnings of a primitive text editor are

More information

2. On the main menu, click File -> New... or File -> New -> Other... Windows Fundamentals

2. On the main menu, click File -> New... or File -> New -> Other... Windows Fundamentals Windows Fundamentals http://www.functionx.com/win32/index.htm http://www.functionx.com/visualc/index.htm Introduction to windows Overview Microsoft Windows is an operating system that helps a person interact

More information

Window programming. Programming

Window programming. Programming Window programming 1 Objectives Understand the mechanism of window programming Understand the concept and usage of of callback functions Create a simple application 2 Overview Windows system Hello world!

More information

Question No: 1 (Marks: 1) - Please choose one For showing Dialog we can use "ShowWindow(...)" function.

Question No: 1 (Marks: 1) - Please choose one For showing Dialog we can use ShowWindow(...) function. MUHAMMAD FAISAL MIT 4 th Semester Al-Barq Campus (VGJW01) Gujranwala faisalgrw123@gmail.com CS410 Mega File of Solved Mid Term Papers CS410 - WINDOWS PROGRAMMING Question No: 1 (Marks: 1) - Please choose

More information

Application Note QWinTM GUI Kit for Prototyping Embedded Systems on Windows

Application Note QWinTM GUI Kit for Prototyping Embedded Systems on Windows QP state machine frameworks for Microsoft Windows QWinTM GUI Kit for Prototyping Document Revision H June 2017 Copyright Quantum Leaps, LLC info@state-machine.com www.state-machine.com Table of Contents

More information

27 Designing Your Own Program

27 Designing Your Own Program 27 Designing Your Own Program 27.1 Using API s...27-2 27.2 Device Access APIs...27-19 27.3 Cache Buffer Control APIs...27-30 27.4 Queuing Access Control APIs...27-36 27.5 System APIs...27-39 27.6 SRAM

More information

Customizable Toolbar: Implementing a toolbar combo button

Customizable Toolbar: Implementing a toolbar combo button Customizable Toolbar: Implementing a toolbar combo button Problem How do I implement a Combo Button on my toolbar? I'm having trouble getting notifications, filling the list, adding to the list, or handling

More information

Aspect-Oriented Programming with C++ and AspectC++ AOSD 2007 Tutorial. Part V Examples. Examples V/1

Aspect-Oriented Programming with C++ and AspectC++ AOSD 2007 Tutorial. Part V Examples. Examples V/1 Aspect-Oriented Programming with C++ and AspectC++ AOSD 2007 Tutorial Part V V/1 AspectC++ in Practice - Applying the observer protocol Example: a typical scenario for the widely used observer pattern

More information

Detecting USB Device Insertion and Removal Using Windows API

Detecting USB Device Insertion and Removal Using Windows API Written by Tom Bell Detecting USB Device Insertion and Removal Using Windows API When I needed to know how to detect USB device insertion and removal, I was developing an application for backing up USB

More information

/*********************************************************************

/********************************************************************* Appendix A Program Process.c This application will send X, Y, Z, and W end points to the Mx4 card using the C/C++ DLL, MX495.DLL. The functions mainly used are monitor_var, change_var, and var. The algorithm

More information

Chapter 1 Getting Started

Chapter 1 Getting Started Chapter 1 Getting Started The C# class Just like all object oriented programming languages, C# supports the concept of a class. A class is a little like a data structure in that it aggregates different

More information

Tutorial 9:Child Window Controls

Tutorial 9:Child Window Controls Tutorial 9:Child Window Controls This win32 tutorial was created and written by Iczelion for MASM32. It was translated for use by HLA High Level Assembly) users by Randall Hyde. All original copyrights

More information

SIGMA SIGMAP02 Plugin Developer's Manual

SIGMA SIGMAP02 Plugin Developer's Manual SIGMA SIGMAP02 Plugin Developer's Manual Application Note Address: ASIX s.r.o. Staropramenna 4 150 00 Prague Czech Republic E-Mail: WWW: sales@asix.net (sales inquiries, ordering) support@asix.net (technical

More information

Getting Started. 1 st Week, Sun-Jeong Kim. Computer Graphics Applications

Getting Started. 1 st Week, Sun-Jeong Kim. Computer Graphics Applications OpenGL Programming Getting Started 1 st Week, 2008 Sun-Jeong Kim Visual Studio 2005 Windows Programming 2 Visual C++ Win32 Application New Project 3 Empty project Application Settings 4 Solution Prac01

More information

int fnvgetconfig(handle h, UINT32 id, const void *cfg, size_t sz);... 4

int fnvgetconfig(handle h, UINT32 id, const void *cfg, size_t sz);... 4 RP-VL-UTIL-V1 Developer s Guide [ Contents ] 1. Introduction... 1 2. Building Environment... 1 3. Operating Environment... 1 4. Function Explanation... 2 4.1. Common API for Transmitting and Receiving...

More information

x86.virtualizer source code

x86.virtualizer source code x86.virtualizer source code author: ReWolf date: IV/V.2007 rel.date: VIII.2007 e-mail: rewolf@rewolf.pl www: http://rewolf.pl Table of contents: 1. Usage 2. Compilation 3. Source code documentation - loader

More information

That means circular linked list is similar to the single linked list except that the last node points to the first node in the list.

That means circular linked list is similar to the single linked list except that the last node points to the first node in the list. Leaning Objective: In this Module you will be learning the following: Circular Linked Lists and it operations Introduction: Circular linked list is a sequence of elements in which every element has link

More information

2. OpenGL in a Window System

2. OpenGL in a Window System 2. OpenGL in a Window System OpenGL is purely a graphics API It provides no support for - performing windowing tasks - obtaining user input - rendering fonts Every windowing system must provide some library

More information

RAD Studio XE3 The Developer Force Multiplier

RAD Studio XE3 The Developer Force Multiplier RAD Studio XE3 The Developer Force Multiplier Windows 8 Mac OS X Mountain Lion C++11 64-bit Metropolis UI C99 Boost Visual LiveBindings C++ Bjarne Stroustrup C with Objects (1979) Modeled OO after Simula

More information

Thecontentsofthismanualdescribetheproduct, BDS-PROLOG forwindows(hereinafter

Thecontentsofthismanualdescribetheproduct, BDS-PROLOG forwindows(hereinafter WIN-PROLOG 6.1 Thecontentsofthismanualdescribetheproduct, BDS-PROLOG forwindows(hereinafter called WIN-PROLOG)andoneormoreofits LPAToolkits,andarebelievedcorrectatthe time of going to press. They do not

More information

Course 3D_OpenGL: 3D-Graphics with C++ and OpenGL Chapter 1: Moving Triangles

Course 3D_OpenGL: 3D-Graphics with C++ and OpenGL Chapter 1: Moving Triangles 1 Course 3D_OpenGL: 3D-Graphics with C++ and OpenGL Chapter 1: Moving Triangles Project triangle1 Animation Three Triangles Hundred Triangles Copyright by V Miszalok, last update: 2011-03-20 This project

More information

Introduction to Computer Graphics (CS602) Lecture No 04 Point

Introduction to Computer Graphics (CS602) Lecture No 04 Point Introduction to Computer Graphics (CS602) Lecture No 04 Point 4.1 Pixel The smallest dot illuminated that can be seen on screen. 4.2 Picture Composition of pixels makes picture that forms on whole screen

More information

CC Pilot XS. Video interface description

CC Pilot XS. Video interface description CC Pilot XS Video interface description Table of Contents Introduction... 3 Purpose... 3 References... 3 History... 3 Introdution... 4 Starting CCVideoXS... 4 Controlling CCVideoXS... 5 Windows messages...

More information

PictureTel LiveDTK V2.1 Sample Application Visual C++ 5.0

PictureTel LiveDTK V2.1 Sample Application Visual C++ 5.0 PictureTel LiveDTK V2.1 Sample Application Visual C++ 5.0 May 1998 Enhancements to the LiveDTK 2.0 Sample Application Overview of Enhancements The NetMeeting Wrapper OCX Integration Additional GUI Modifications

More information

HANNAH HOWARD #ABOUTME

HANNAH HOWARD #ABOUTME HANNAH HOWARD #ABOUTME Personal @techgirlwonder hannah@carbon Anecdote: I have ve.com a dog she/her REACTIVE PROGRAMMING: A Better Way to Write Frontend Applications 1. PROBLEM STATEMENT WHAT IS A COMPUTER

More information

Programmer s Manual MM/104 Multimedia Board

Programmer s Manual MM/104 Multimedia Board Programmer s Manual MM/104 Multimedia Board Ver. 1.0 11. Sep. 1998. Copyright Notice : Copyright 1998, INSIDE Technology A/S, ALL RIGHTS RESERVED. No part of this document may be reproduced or transmitted

More information

Revision: 09/21/ East Main Pullman, WA (509) Voice and Fax

Revision: 09/21/ East Main Pullman, WA (509) Voice and Fax Digilent Port Communications Programmers Reference Manual Revision: 09/21/04 246 East Main Pullman, WA 99163 (509) 334 6306 Voice and Fax TM Introduction The DPCUTIL Dynamic Link Library (DLL) provides

More information

GO MOCK TEST GO MOCK TEST I

GO MOCK TEST GO MOCK TEST I http://www.tutorialspoint.com GO MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to Go. You can download these sample mock tests at your local machine

More information

Module 15: Context-Sensitive Help

Module 15: Context-Sensitive Help Module 15: Context-Sensitive Help Program examples compiled using Visual C++ 6.0 (MFC 6.0) compiler on Windows XP Pro machine with Service Pack 2. Topics and sub topics for this Tutorial are listed below:

More information

Developer Documentation

Developer Documentation Developer Documentation Development of Scanner Applications for ACD Windows CE Second Edition Devices Version: 3.0 Copyright ACD Gruppe This document may not be duplicated or made accessible to third parties

More information

Hands-On Lab. Multitouch Gestures - Native. Lab version: Last updated: 12/3/2010

Hands-On Lab. Multitouch Gestures - Native. Lab version: Last updated: 12/3/2010 Hands-On Lab Multitouch Gestures - Native Lab version: 1.0.0 Last updated: 12/3/2010 CONTENTS OVERVIEW... 3 EXERCISE 1: BUILD A MULTITOUCH APPLICATION... 7 Task 1 Create the Win32 Application... 7 Task

More information

4 th (Programmatic Branch ) Advance Windows Programming class

4 th (Programmatic Branch ) Advance Windows Programming class Save from: www.uotechnology.edu.iq 4 th (Programmatic Branch ) Advance Windows Programming class برمجة نوافذ المتقدمة أعداد :م.علي حسن حمادي 2006... 2010 >==> 2012 2013 CONTENTS: The Components of a Window

More information

MFC Programmer s Guide: Getting Started

MFC Programmer s Guide: Getting Started MFC Programmer s Guide: Getting Started MFC PROGRAMMERS GUIDE... 2 PREPARING THE DEVELOPMENT ENVIRONMENT FOR INTEGRATION... 3 INTRODUCING APC... 4 GETTING VISUAL BASIC FOR APPLICATIONS INTO YOUR MFC PROJECT...

More information

Introduction. Overview

Introduction. Overview Digilent Port Communications Programmers Reference Manual Revision: 06/03/05 215 E Main SuiteD Pullman, WA 99163 (509) 334 6306 Voice and Fax TM Introduction The DPCUTIL Dynamic Link Library (DLL) provides

More information

We take a look at implementing some file menu options: New, Open, Save, Save As and Exit.

We take a look at implementing some file menu options: New, Open, Save, Save As and Exit. 1 Programming Windows Terry Marris Jan 2013 7 Files We take a look at implementing some file menu options: New, Open, Save, Save As and Exit. 7.1 Header File The header file is largely unchanged from chapter

More information

An Introduction to Windows Programming Using VC++ Computer Graphics. Binghamton University. EngiNet. Thomas J. Watson

An Introduction to Windows Programming Using VC++ Computer Graphics. Binghamton University. EngiNet. Thomas J. Watson Binghamton University EngiNet State University of New York EngiNet Thomas J. Watson School of Engineering and Applied Science WARNING All rights reserved. No Part of this video lecture series may be reproduced

More information

Qno.2 Write a complete syantax of "Getparents" functions? What kind of value it return and when this function is use? Answer:-

Qno.2 Write a complete syantax of Getparents functions? What kind of value it return and when this function is use? Answer:- CS410 Visual Programming Solved Subjective Midterm Papers For Preparation of Midterm Exam Qno.1 How can I use the CopyTo method of the Windows Forms controls collection to copy controls into an array?

More information

Creating a DirectX Project

Creating a DirectX Project Creating a DirectX Project A DirectPLay Chat Program Setting up your Compiler for DirectX Install DirectX SDK Make sure your compiler has path to directx8/include Directx8/lib Directx8/samples/multimedia/common/src

More information

GUI in C++ PV264 Advanced Programming in C++ Nikola Beneš Jan Mrázek Vladimír Štill. Faculty of Informatics, Masaryk University.

GUI in C++ PV264 Advanced Programming in C++ Nikola Beneš Jan Mrázek Vladimír Štill. Faculty of Informatics, Masaryk University. GUI in C++ PV264 Advanced Programming in C++ Nikola Beneš Jan Mrázek Vladimír Štill Faculty of Informatics, Masaryk University Spring 2017 PV264: GUI in C++ Spring 2017 1 / 23 Organisation Lectures this

More information

Task Toolkit Manual for InduSoft Web Studio v6.1+sp3

Task Toolkit Manual for InduSoft Web Studio v6.1+sp3 Task Toolkit Manual for InduSoft Web Studio v6.1+sp3 This manual documents the public Studio Toolkit functions and example program. 1. Introduction The Studio Toolkit is a set of functions provided in

More information

An overview of how to write your function and fill out the FUNCTIONINFO structure. Allocating and freeing memory.

An overview of how to write your function and fill out the FUNCTIONINFO structure. Allocating and freeing memory. Creating a User DLL Extend Mathcad Professional's power by writing your own customized functions. Your functions will have the same advanced features as Mathcad built-in functions, such as customized error

More information

SUSI-SQFlash. User s Manual

SUSI-SQFlash. User s Manual SUSI-SQFlash User s Manual Version 1.0.1711.1 Advantech Co. Ltd. No. 1, Alley 20, Lane 26, Rueiguang Road, Neihu District, Taipei 114, Taiwan, R. O. C. www.advantech.com Copyright Notice This document

More information

IFE: Course in Low Level Programing. Lecture 5

IFE: Course in Low Level Programing. Lecture 5 Lecture 5 Windows API Windows Application Programming Interface (API) is a set of Windows OS service routines that enable applications to exploit the power of Windows operating systems. The functional

More information

Using DAQ Event Messaging under Windows NT/95/3.1

Using DAQ Event Messaging under Windows NT/95/3.1 Application Note 086 Using DAQ Event Messaging under Windows NT/95/3.1 by Ken Sadahiro Introduction The NI-DAQ language interface for PCs is mostly a "polling-oriented" Application Programming Interface,

More information

Motivation was to facilitate development of systems software, especially OS development.

Motivation was to facilitate development of systems software, especially OS development. A History Lesson C Basics 1 Development of language by Dennis Ritchie at Bell Labs culminated in the C language in 1972. Motivation was to facilitate development of systems software, especially OS development.

More information

Input and Interaction

Input and Interaction Input and Interaction 5 th Week, 2011 Graphical Input Devices Mouse Trackball Light Pen Data Tablet Joy Stick Space Ball Input Modes Input devices contain a trigger which can be used to send a signal to

More information

File System Watcher. Gregory Adam 2015

File System Watcher. Gregory Adam 2015 File System Watcher Gregory Adam 2015 Le minerai de fer peut croire qu'il est torturé sans raison dans la fournaise, mais lorsque la lame de l'acier le plus fin réfléchit à cette torture, elle en comprend

More information

Win32 Multilingual IME Overview for IME Development

Win32 Multilingual IME Overview for IME Development 1 Win32 Multilingual IME Overview for IME Development Version 1.41 04-01-1999 This documentation introduces the basics on how to develop an IME for Windows 95, Windows 98, and Windows NT/2000. It is also

More information

Lab # 02. Basic Elements of C++ _ Part1

Lab # 02. Basic Elements of C++ _ Part1 Lab # 02 Basic Elements of C++ _ Part1 Lab Objectives: After performing this lab, the students should be able to: Become familiar with the basic components of a C++ program, including functions, special

More information

PusleIR Multitouch Screen Software SDK Specification. Revision 4.0

PusleIR Multitouch Screen Software SDK Specification. Revision 4.0 PusleIR Multitouch Screen Software SDK Specification Revision 4.0 Table of Contents 1. Overview... 3 1.1. Diagram... 3 1.1. PulseIR API Hierarchy... 3 1.2. DLL File... 4 2. Data Structure... 5 2.1 Point

More information

PROGRAMMING TECHNIQUES

PROGRAMMING TECHNIQUES Subclassing? Class modules aren t just for business rules. by Karl E. Peterson f all the innovations Visual Basic 4.0 introduced, the most revolutionary is probably the new Class module. By now, you ve

More information

Microsoft Excel 2010 Training. Excel 2010 Basics

Microsoft Excel 2010 Training. Excel 2010 Basics Microsoft Excel 2010 Training Excel 2010 Basics Overview Excel is a spreadsheet, a grid made from columns and rows. It is a software program that can make number manipulation easy and somewhat painless.

More information

CS410. Note: VuGujranwala.com is not responsible for any solved solution, but honestly we are trying our best to Guide correctly.

CS410. Note: VuGujranwala.com is not responsible for any solved solution, but honestly we are trying our best to Guide correctly. CS410 Note: VuGujranwala.com is not responsible for any solved solution, but honestly we are trying our best to Guide correctly. Prepared By : Exam Term : Mid Total MCQS : 69 page 1 / 12 1 - Choose Command

More information

Introducing MFC. Programming Windows with MFC, Second Edition. Jeff Prosise

Introducing MFC. Programming Windows with MFC, Second Edition. Jeff Prosise Introducing MFC Programming Windows with MFC, Second Edition. Jeff Prosise 1 Hello, MFC Short Years Ago Windows Applications written in C: Knowing the ins and outs of new operating system Knowing hundreds

More information

MCS 2514 Fall 2012 Programming Assignment 3 Image Processing Pointers, Class & Dynamic Data Due: Nov 25, 11:59 pm.

MCS 2514 Fall 2012 Programming Assignment 3 Image Processing Pointers, Class & Dynamic Data Due: Nov 25, 11:59 pm. MCS 2514 Fall 2012 Programming Assignment 3 Image Processing Pointers, Class & Dynamic Data Due: Nov 25, 11:59 pm. This project is called Image Processing which will shrink an input image, convert a color

More information

Variables. Data Types.

Variables. Data Types. Variables. Data Types. The usefulness of the "Hello World" programs shown in the previous section is quite questionable. We had to write several lines of code, compile them, and then execute the resulting

More information

User Guide for Sign Language Video Chat for Deaf People. User Guide. For End Users ( or Deaf people) For Developers ( or Programmers) FAQs

User Guide for Sign Language Video Chat for Deaf People. User Guide. For End Users ( or Deaf people) For Developers ( or Programmers) FAQs User Guide For End Users (or Deaf people) For Developers ( or Programmers) FAQs For End Users ( or Deaf people) 1. Introduction This application allows two or more Deaf people to communicate with each

More information

Windows Communication Library Description

Windows Communication Library Description Windows Communication Library Description Paint Mixing Windows Data Communication Library for PMA7200 & PMA7500 technology PMA7501 series ECOMIX-Terminals EM01-* SpeedMix PMC7500-* Version 5.2.2 Windows

More information

12 CREATING NEW TYPES

12 CREATING NEW TYPES Lecture 12 CREATING NEW TYPES of DATA Typedef declaration Enumeration Structure Bit fields Uninon Creating New Types Is difficult to solve complex problems by using programs written with only fundamental

More information

Preparing Code for the IA-64 Architecture (Code Clean) A Programmer s Reference

Preparing Code for the IA-64 Architecture (Code Clean) A Programmer s Reference Preparing Code for the IA-64 Architecture (Code Clean) A Programmer s Reference Table of Contents About This Guide......................................... 3 Section 1: Introduction...................................

More information

BASIC ELEMENTS OF A COMPUTER PROGRAM

BASIC ELEMENTS OF A COMPUTER PROGRAM BASIC ELEMENTS OF A COMPUTER PROGRAM CSC128 FUNDAMENTALS OF COMPUTER PROBLEM SOLVING LOGO Contents 1 Identifier 2 3 Rules for naming and declaring data variables Basic data types 4 Arithmetic operators

More information

QUIZ. 1. Explain the meaning of the angle brackets in the declaration of v below:

QUIZ. 1. Explain the meaning of the angle brackets in the declaration of v below: QUIZ 1. Explain the meaning of the angle brackets in the declaration of v below: This is a template, used for generic programming! QUIZ 2. Why is the vector class called a container? 3. Explain how the

More information

Topic 6: A Quick Intro To C. Reading. "goto Considered Harmful" History

Topic 6: A Quick Intro To C. Reading. goto Considered Harmful History Topic 6: A Quick Intro To C Reading Assumption: All of you know basic Java. Much of C syntax is the same. Also: Some of you have used C or C++. Goal for this topic: you can write & run a simple C program

More information

You are probably tired of listening to design issues and general game programming

You are probably tired of listening to design issues and general game programming CH03_p.041-090.qxd 6/1/04 2:39 PM Page 41 chapter 3 Engineering the Engine What you get if you don t get what you want is experience. Desire Nick You are probably tired of listening to design issues and

More information

Lecture 24 Notes Search in Graphs

Lecture 24 Notes Search in Graphs Lecture 24 Notes Search in Graphs 15-122: Principles of Imperative Computation (Spring 2016) Frank Pfenning, André Platzer, Rob Simmons, Penny Anderson 1 Introduction In this lecture, we will discuss the

More information

Short Notes of CS201

Short Notes of CS201 #includes: Short Notes of CS201 The #include directive instructs the preprocessor to read and include a file into a source code file. The file name is typically enclosed with < and > if the file is a system

More information

Windows Event Binding Made Easy Doug Hennig

Windows Event Binding Made Easy Doug Hennig Windows Event Binding Made Easy Doug Hennig A feature available in other development environments but missing in VFP is the ability to capture Windows events. VFP 9 extends the BINDEVENT() function to

More information

Pegasus Development Kit Programmer's Reference. Version Pegasus Development Kit is out of a support.

Pegasus Development Kit Programmer's Reference. Version Pegasus Development Kit is out of a support. Programmer's Reference Version.1.00 Pegasus Development Kit is out of a support. (C) 2007 Thomson.All rights reserved. Grass Valley is a trademark of Thomson. Table Of Contents TABLE OF CONTENTS...2 PRELIMINARIES...3

More information

64 Bit Delphi What does it all mean?

64 Bit Delphi What does it all mean? 64 Bit Delphi What does it all mean? 1 David Intersimone David I VP of Developer Relations and Chief Evangelist davidi@embarcadero.com http://blogs.embarcadero.com/davidi Twitter: davidi99 Skype: davidi99

More information

CS201 - Introduction to Programming Glossary By

CS201 - Introduction to Programming Glossary By CS201 - Introduction to Programming Glossary By #include : The #include directive instructs the preprocessor to read and include a file into a source code file. The file name is typically enclosed with

More information

Here are the topics covered in this tutorial:

Here are the topics covered in this tutorial: FEATURES IN-DEPTH tutorials Presenting Your Work To preserve and present your work, you have to save and print your worksheets. This tutorial explains how to pull together the elements of a printed piece

More information

Data Structure Series

Data Structure Series Data Structure Series This series is actually something I started back when I was part of the Sweet.Oblivion staff, but then some things happened and I was no longer able to complete it. So now, after

More information

CS 211 Programming Practicum Fall 2018

CS 211 Programming Practicum Fall 2018 Due: Wednesday, 11/7/18 at 11:59 pm Infix Expression Evaluator Programming Project 5 For this lab, write a C++ program that will evaluate an infix expression. The algorithm REQUIRED for this program will

More information

University of Technology. Laser & Optoelectronics Engineering Department. C++ Lab.

University of Technology. Laser & Optoelectronics Engineering Department. C++ Lab. University of Technology Laser & Optoelectronics Engineering Department C++ Lab. Second week Variables Data Types. The usefulness of the "Hello World" programs shown in the previous section is quite questionable.

More information

Conditionals and Recursion. Python Part 4

Conditionals and Recursion. Python Part 4 Conditionals and Recursion Python Part 4 Modulus Operator Yields the remainder when first operand is divided by the second. >>>remainder=7%3 >>>print (remainder) 1 Boolean expressions An expression that

More information

System Monitoring Library Windows Driver Software for Industrial Controllers

System Monitoring Library Windows Driver Software for Industrial Controllers IFPMGR.WIN System Monitoring Library Windows Driver Software for Industrial ontrollers Help for Windows www.interface.co.jp ontents hapter 1 Introduction...4 1.1 Overview... 4 1.2 Features... 4 hapter

More information

Code No: R Set No. 1

Code No: R Set No. 1 Code No: R05010106 Set No. 1 1. (a) Draw a Flowchart for the following The average score for 3 tests has to be greater than 80 for a candidate to qualify for the interview. Representing the conditional

More information

softmc Servotronix Motion API Reference Manual Revision 1.0

softmc Servotronix Motion API Reference Manual Revision 1.0 Servotronix Motion API Reference Manual Revision 1.0 Revision History Document Revision Date 1.0 Nov. 2014 Initial release Copyright Notice Disclaimer Trademarks 2014 Servotronix Motion Control Ltd. All

More information

Basic Types, Variables, Literals, Constants

Basic Types, Variables, Literals, Constants Basic Types, Variables, Literals, Constants What is in a Word? A byte is the basic addressable unit of memory in RAM Typically it is 8 bits (octet) But some machines had 7, or 9, or... A word is the basic

More information