Image
7.6.2016 0 Comments

ASSEMBLER pod Windows: Zobrazenie okna (3. časť)

Späť na úvod >> Späť na programovanie >> Späť na seriál

Novinky zo sveta Assembleru

  • Bol uvoľnený Service Pack 1 for MASM32 version 6. Môžete ho získať na adrese http://www.pbq.com.au/home/hutch/masm.htm. Sevice Pack pridáva nové príklady a návody, ďalej aktualizuje nástroje TheGun a Qeditor.
  • Máme tu novú verziu Windows Include File for MASM version 1.23 (January, 2, 2001). Upravuje problém s "hWndOwner" a pridáva viacero všeobecných konštánt systému Windows. v  http://www.piic.net/~win32asm/files/windows.zip
  • Vyšla nová verzia Microsoft (R) Macro Assembler Version MASM 6.15. Ide o novú verziu súboru v ml.exe (prekladača assembleru). http://www.piic.net/~win32asm/files/masm615.zip

ASM WEB linky

  • http://www.pbq.com.au/home/hutch/masm.htm – oficiálna stránky balíku programov MASM32. Ak hľadáte posledné version/updates tak ste na správnom mieste.
  • http://asmjournal.freeservers.com/ – online stránka odborného časopisu, ktorý sa zaoberá programovaním v Assembleri. Magazín je určený ako začiatočníkom tak aj pokročilým asm programátorom.
  • http://win32asm.cjb.net/, prípadne http://www.piic.net/~win32asm/ – Iczelion's Win32 Assembly Homepage. Stránka obsahuje návody, zdrojové kódy, programy týkajúce sa Win32 Assembleru. Nájdete tu tiež Message Board, kde môžete poslať svoju otázku ohľadom assembleru, prípadne odpovedať na otázky účastníkov Message Board.

Rozhranie Win32 API podporuje dva typy aplikácií: graficky orientované aplikácie (GUI)  a textovo, alebo riadkovo orientované aplikácie (CUI). GUI aplikácie obsahujú grafické užívateľské rozhranie. Tieto aplikácie vytvárajú okná, obsahujú menu a komunikujú s užívateľom prostredníctvom ďalších dialógových okien a rôznych grafických prvkov typických pre Windows. Príkladom GUI aplikácie sú napr. programy dodávané s OS Windows (Notepad, Calculator, Paint, WordPad a mnohé iné). CUI aplikácie pripomínajú textové aplikácie z OS MSDOS – nevytvárajú okná, majú textový výstup, nespracovávajú správy a nepotrebujú grafické užívateľské rozhranie. Príkladom CUI aplikácie môže byť napr. program PING.EXE.

Okná sú najzákladnejším rysom aplikácií v operačnom systéme Windows. Okná sa používajú takmer vo všetkých aspektoch užívateľského rozhrania aplikácie, v rozsahu od materského (hlavného) okna aplikácie cez jednotlivé tlačidlá, editovateľné ovládacie prvky, dialógové okná atď. K vytváraniu okien je potrebná funkcia CreateWindowEx, ktorá je najkomplexnejšou a najdôležitejšou funkciou vo Windows API. Existuje niekoľko typov preddefinovaných okien, ktoré je možné ľahko vytvárať. Patria sem tlačidlá (button), statické ovládacie prvky, zoznamy (listbox), editovateľné ovládacie prvky (editbox), scrollbar atď. Pre prvé (hlavné) okno, ktoré musí aplikácia vytvoriť však nie sú k dispozícii žiadne preddefinované okná. Aplikácia vyžaduje hlavné okno, aby mohla spracovávať správy a vstup od užívateľa. Toto okno je rodičom pre všetky okná hornej úrovne, vytvorené v aplikácii. Hlavné okno je vytvorené vo WinMain, kde sa nachádza aj cyklus pre spracovanie správ. V prípade, že ide o prvý výskyt aplikácie, ktorá sa má spustiť, musí sa najprv zaregistrovať trieda okna pomocou funkcie RegisterClassEx. Keď je nová trieda zaregistrovaná, môže sa vytvoriť hlavné okno aplikácie. Správy sa spracovávajú v cykle vo funkcii WinMain dotiaľ, pokým aplikácia neskončí. Správy sú posielané do funkcie WndProc, ktorá bola zaregistrovaná pri vytváraní triedy okna. Aplikácia buď správu spracuje alebo ju odovzdá funkcii DefWindowProc k východziemu spracovaniu.

RegisterClassEx

Windows NT

Win 95

Win32s

Lib

Include

Áno

Áno

Áno

user32.lib

user32.inc

 

RegisterClassEx registruje nové triedy okien, ktoré sa používajú pri vytváraní okien. Rovnakú triedu je možné použiť k vytvoreniu toľko okien, koľko vaša aplikácia potrebuje. Používa sa hlavne vo WinMain na vytvorenie triedy pre hlavné okno aplikácie. RegisterClassEx môžete tiež použiť na vytváranie vlastných tried ovládacích prvkov a ostatných okien.

Syntax: ATOM RegisterClassEx, CONST WNDCLASSEX  *lpwc, UINT cbwcx

  *lpwc CONST WNDCLASSEX: Ukazovateľ na dátovú štruktúru WNDCLASSEX.

cbwcx UINT: Veľkosť štruktúry, na ktorú ukazuje lpwc, v bajtoch.

 

Definícia WNDCLASSEX

typedef struct _WNDCLASSEX {    // wc

UINT    style;

WNDPROC lpfnWndProc;

int     cbClsExtra;

int     cbWndExtra;

HANDLE  hInstance;

HICON   hIcon;

HCURSOR hCursor;

HBRUSH  hbrBackground;

LPCTSTR lpszMenuName;

LPCTSTR lpszClassName;

HICON hIconSm;

} WNDCLASSEX;

style UINT: Použiť môžete jeden alebo viacej štýlov (viď tabuľka 1), ktoré treba v assembleri spojiť pomocou znamienka plus (+) alebo pomocou binárneho operátora OR. Napríklad: CS_HREDRAW + CS_VREDRAW, CS_HREDRAW or CS_VREDRAW.

lpfnWndProc WNDPROC: Ukazuje na funkciu (WindowProc) spätného volania okna pre spracovanie správ.

cbClsExtra int: Špecifikuje niekoľko extra bajtov, ktoré sa majú vyhradiť na konci štruktúry triedy okien pre ukladanie informácií. Operačný systém nastaví bajty na nulu.

cbWndExtra int: Špecifikuje niekoľko extra bajtov, ktoré sa majú vyhradiť po výskyte okna. Ak aplikácia používa štruktúru WNDCLASSEX k zaregistrovaniu dialógového okna, vytvoreného pomocou direktívy CLASS v súbore prostriedkov, musí nastaviť tento člen na DLGWINDOWEXTRA.

hInstance HANDLE: Handle výskytu, v ktorom je procedúra okna pre túto triedu.

hIcon HICON: Handle ikony, ktorá sa má použiť pre túto triedu okien. Ak je nastavený na NULL, aplikácia musí nakresliť ikonu vždy, keď užívateľ okno zminimalizuje. Získa sa z volania LoadIcon.

hCursor HCURSOR: Handle kurzora myši, ktorý sa má použiť pre túto triedu okien. Ak je nastavený na NULL, aplikácia musí nastaviť kurzor myši vždy, keď kurzor opustí okno. Získa sa z volania LoadCursor.

hbrBackground HBRUSH: Handle štetca použitého na vyfarbenie pozadia okna. Môžete použiť jednu zo štandardných systémových farieb – tabuľka 2 (hodnota 1 musí byť pridaná k zvolenej farbe, napr.: COLOR_WINDOW+1).

lpszMenuName LPCTSTR: Ukazuje na nulou zakončený reťazec s východzím názvom menu pre triedu. Ak trieda nemá žiadnu východzie menu, použite hodnotu NULL.

lpszClassName LPCTSTR: Ukazuje na nulou zakončený reťazec, ktorý obsahuje názov triedy. Tento názov sa použije v parametri lpClassName vo funkcii CreateWindowEx.

hIconSm HICON: Handle k ikone, ktorá sa má použiť v titulkovom pruhu okien, vytvorených touto triedou. Rozmery ikony sú 16x16 bodov. Ak tento parameter je hodnota NULL systém použije hIcon tak, že si privlastní veľkosť a používa ikonu ako malú.

Výsledok funkcie

Ak bola funkcia RegisterClassEx úspešná, vráti atom, ktorý jedinečne identifikuje novú triedu, ktorá bola zaregistrovaná, v opačnom prípade vráti hodnotu NULL.

Tabuľka 1: Štýly tried okien

Štýl

Význam

CS_BYTEALIGNCLIENT

Zarovnáva klientskú oblasť okna horizontálne na hranicu bajtu (8 bitov), aby sa zvýšil výkon kreslenia. Má vplyv na šírku okna a jeho horizontálne umiestnenie na obrazovke.

CS_BYTEALIGNWINDOW

Zarovnáva okno horizontálne na hranicu bajtu, aby sa zvýšil výkon presúvania alebo zmeny veľkosti okna. Má vplyv na šírku okna a jeho horizontálne umiestnenie na obrazovke.

CS_CLASSDC

Vyhradí jeden kontext zariadenia DC (DC – device context), ktorý majú zdieľať všetky okná v triede. V prípade, že sa pokúsi DC použiť viacej vlákien (thread) v aplikácii súčastne, Windows dovolí iba jednému vláknu skončiť úspešne.

CS_DBLCLKS

Upozorní okno, keď dôjde k dvojitému kliknutiu.

CS_GLOBALCLASS

Vytvára triedu, ktorá je k dispozícii všetkým aplikáciám počas behu aplikácie, ktorá triedu vytvorila. Bežným použitím by bolo vytvorenie vlastných ovládacích prvkov v knižnici DLL.

CS_HREDRAW

Prekreslí celé okno, ak je upravená horizontálna veľkosť okna.

CS_NOCLOSE

Voľba Close v systémovom menu sa stane neprístupnou.

CS_OWNDC

Vyhradí jedinečný kontext zariadenia pre každé okno v danej triede.

CS_PARENTDC

Každé okno vytvorené pomocou tejto triedy, bude používať kontext zariadenia materského okna.

CS_SAVEBITS

Ukladá časť obrazu na obrazovke, zakrytého oknom, ako bitovú mapu. Keď sa okno odstráni, bitová mapa je použitá k opätovnému vytvoreniu obrazu na obrazovke. Tento štýl zvyšuje čas potrebný na zobrazenie okna, pretože operačný systém musí najprv vyhradiť v pamäti miesto na  uloženie bitovej mapy.

CS_VREDRAW

Prekreslí celé okno, ak je upravená vertikálna veľkosť okna.

 

Tabuľka 2: Hodnoty štandardných systémových farieb

Hodnota

Hodnota

COLOR_3DDKSHADOW

COLOR_HIGHLIGHT

COLOR_3DFACE

COLOR_HIGHLIGHTTEXT

COLOR_3DLIGHT

COLOR_INACTIVEBORDER

COLOR_3DHILIGHT

COLOR_INACTIVECAPTION

COLOR_3DSHADOW

COLOR_INACTIVECAPTIONTEXT

COLOR_ACTIVEBORDER

COLOR_MENU

COLOR_ACTIVECAPTION

COLOR_MENUTEXT

COLOR_APPWORKSPACE

COLOR_MSGBOX

COLOR_BACKGROUND

COLOR_MSGBOXTEXT

COLOR_BTNFACE

COLOR_SCROLLBAR

COLOR_BTNHILIGHT

COLOR_SHADOW

COLOR_BTNSHADOW

COLOR_WINDOW

COLOR_BTNTEXT

COLOR_WINDOWFRAME

COLOR_CAPTIONTEXT

COLOR_WINDOWTEXT

COLOR_GRAYTEXT

 

 

CreateWindowEx

Windows NT

Win 95

Win32s

Lib

Include

Áno

Áno

Áno

user32.lib

user32.inc

Funkcia CreateWindowEx sa používa na vytvorenie okna, založeného na jednej z preddefinovaných tried alebo na triede, ktorá bola vytvorená pomocou funkcie RegisterClassEx. Veľkosť, umiestnenie a štýl okna určujú parametre odovzdávané funkcii CreateWindowEx. K zobrazeniu okna sa používa funkcia ShowWindow. Funkcia CreateWindowEx sa používa k vytvoreniu všetkých typov okien, napríklad overlapped (prekryté okno), pop-up, alebo child window (dcérske okno). Vo funkcii WinMain sa CreateWindowEx používa na vytvorenie hlavného okna aplikácie a vo vnútri aplikácie na vytváranie dcérskych okien a ovládacích prvkov užívateľského rozhrania.

Syntax:

HWND CreateWindowEx,

DWORD dwExStyle,

LPCTSTR  lpClassName,         // address of registered class name

LPCTSTR  lpWindowName,    // address of window name

DWORD  dwStyle,       // window style

int  x,               // horizontal position of window

int  y,               // vertical position of window

int  nWidth,    // window width

int  nHeight,   // window height

HWND  hWndParent, // handle of parent or owner window

HMENU  hMenu,        // handle of menu or child-window identifier

HANDLE  hInstance, // handle of application instance

LPVOID  lpParam       // address of window-creation data

 dwExStyle DWORD: Špecifikuje rozšírený štýl, ktorý sa použije k vytvoreniu okna. Rozšírené štýly sú uvedené v tabuľke 4.

lpClassName LPCTSTR: Ukazovateľ na nulou zakončený reťazec, ktorý obsahuje platný názov triedy pre okno alebo atóm typu integer. Názov triedy môže byť vytvorený pomocou funkcie RegisterClassEx alebo môže byť jednou z preddefinovaných tried z tabuľky 3. Ak je lpClassName atóm, musí byť vytvorený predchádzajúcim volaním funkcie GlobalAddAtom.

lpWindowName LPCTSTR: Ukazovateľ na nulou zakončený reťazec, ktorý obsahuje meno okna. Meno okna sa zobrazuje v titulkovom pruhu, avšak toto závisí od použitého štýlu okna.

dwStyle DWORD: Štýl okna. Štýl sa skladá z hodnôt, ktoré sú kombinované v assembleri znamienkom plus (+) alebo binárnym operátorom OR. Napríklad: WS_OVERLAPPEDWINDOW or WS_BORDER. Štýly okien sú uvedené v tabuľke 5.

X int: Horizontálna pozícia ľavého horného rohu okna alebo ovládacieho prvku. V prípade, že táto pozícia nie je dôležitá, môžete použiť CW_USEDEFAULT. Pozícia X a Y sa počíta od ľavého horného rohu obrazovky alebo materského okna. Hodnoty sa zadávajú v bodoch a závisia od rozlíšenia obrazovky. Napríklad: obrazovka s rozlíšením 800x600 má 800 bodov horizontálne a 600 bodov vertikálne.

Y int: Vertikálna pozícia ľavého horného rohu okna alebo ovládacieho prvku. V prípade, že táto pozícia nie je dôležitá, môžete použiť CW_USEDEFAULT.

nWidth int: Horizontálna šírka okna alebo ovládacieho prvku. V prípade, že táto pozícia nie je dôležitá, môžete použiť CW_USEDEFAULT.

nHeight int: Vertikálna výška okna alebo ovládacieho prvku. V prípade, že táto pozícia nie je dôležitá, môžete použiť CW_USEDEFAULT.

hWndParent HWND: Handle k oknu alebo rodičovi ovládacieho prvku. Ak žiadne materské okno neexistuje, použite hodnotu NULL. V prípade, že nie je uvedené žiadne materské okno, nebude okno pri ukončení aplikácie automaticky zatvorené. K odstráneniu okna pred zatvorením aplikácie sa používa funkcia DestroyWindow. 

hMenu HMENU: Handle k menu okna. Ak sa má použiť trieda menu, použite hodnotu NULL. U ovládacích prvkov je hmenu nastavené na hodnotu integer, ktorá predstavuje ID vytváraného ovládacieho prvku. Keď dôjde k akcii s ovládacím prvkom, všetky správy WM_COMMAND sa odkazujú na toto ID.

hInstance HANDLE: Handle výskytu modulu aplikácie, ktorý vytvára okno alebo ovládací prvok.

lpParam LPVOID: Ukazovateľ na dáta, ktoré budú odovzdané ako LPARAM správy WM_CREATE. Pri vytváraní MDICLIENT použite ukazovateľ na štruktúru CLIENTCREATESTRUCT. U väčšiny okien a ovládacích prvkov nastavte lpParam na hodnotu NULL.

Výsledok funkcie

Ak bola funkcia CreateWindowEx úspešná, vráti handle okna k novo vytvorenému oknu; pokiaľ okno nemohlo byť vytvorené vráti hodnotu NULL.

Tabuľka 3: Preddefinované triedy okien

Trieda

Význam

BUTTON

button (tlačidlo), group box (rámik skupiny), check box (okienko pre označenie začiarknutím), radio buttons (rádiové tlačidlo, tlačidlo voľby) alebo okno s ikonou. Tlačidlá je možné vytvoriť so štýlom BS_OWNERDRAW, aby ste dali aplikácii dohľad na tým, ako tlačidlo v rôznych stavoch vyzerá.

COMBOBOX

kombinácia zoznamu s editačným poľom, alebo roletový zoznam pre výber.

EDIT

ovládací prvok pre editovanie, ktorý slúži k zadávaniu textu užívateľom. Môže obsahovať jeden alebo viac riadkov.

LISTBOX

ovládací prvok typu zoznam, ktorý sa používa pre zobrazenie zoznamu volieb ako sú napr. reťazce, farby, ikony a ďalšie grafické symboly, z ktorých si užívateľ môže vyberať jednu alebo viacej volieb. Zoznamy je možné vytvárať s LBS_OWNERDRAWFIXED alebo LBS_OWNERDRAWVARIABLE, aby ste dali aplikácii dohľad nad tým, ako budú reťazce v tomto ovládacom prvku vyzerať.

MDICLIENT

MDI (Multiple Document Interface) – klientské okno. Toto okno prijíma správy, ktoré v aplikácii ovládajú MDI dcérske okná. Aby MDI aplikácia správne pracovala, musí vytvoriť okno MDICLIENT.

SCROLLBAR

ovládací prvok scrollbar sa používa vtedy ak dokument alebo obrázok je väčší  než je veľkosť okna. Umožňuje užívateľovi prezrieť si celý dokument alebo obrázok posúvaním klientskej oblasti.

STATIC

ovládací prvok typu statický text. Statický text sa používa k umiestneniu textu do okna.

Tabuľka 4: Rozšírené štýly okien

Štýly okien

Význam

WS_EX_ACCEPTFILES

Vytvára okno, ktoré bude akceptovať drag-drop súbory.

WS_EX_CLIENTEDGE

Ohraničenie okna má zapustený okraj.

WS_EX_CONTEXTHELP

V titulkovom pruhu okna zobrazí otáznik. Keď užívateľ na tento otáznik klikne, kurzor s zmení na otáznik s ukazovateľom. Ak potom užívateľ klikne na dcérske okno, tento potomok obdrží správu WM_HELP. WS_EX_CONTEXTHELP nemôže byť použitý so štýlmi WS_MAXIMIZEBOX or WS_MINIMIZEBOX.

WS_EX_CONTROLPARENT

Umožňuje užívateľovi pohyb medzi dcérskymi oknami daného okna pomocou klávesy Tab.

WS_EX_DLGMODALFRAME

Vytvára okno, ktoré má dvojité ohraničenie. Ak chcete pridať titulok, môžete v parametre dwStyle použiť štýl WS_CAPTION.

WS_EX_LEFT

Vytvára okno s vlastnosťami “left-aligned“. Tento parameter je implicitný.

WS_EX_LEFTSCROLLBAR

Umiestni vertikálny rolovací pruh (ak je prítomný) do ľavej časti klientskej oblasti.

WS_EX_LTRREADING

Vytvára okno s textom zobrazeným s použitím poradia čítania zľava doprava. Toto je implicitné.

WS_EX_MDICHILD

Vytvára MDI dcérske okno.

WS_EX_NOPARENTNOTIFY

Vypína správy WM_PARENTNOTIFY.

WS_EX_OVERLAPPEDWINDOW

Kombinácia štýlov WS_EX_CLIENTEDGE a WS_EX_WINDOWEDGE.

WS_EX_PALETTEWINDOW

Kombinácia štýlov WS_EX_WINDOWEDGE, WS_EX_TOOLWINDOW, a WS_EX_TOPMOST.

WS_EX_RIGHT

Vytvára okno s vlastnosťami “right-aligned“.

WS_EX_RIGHTSCROLLBAR

Umiestňuje vertikálny rolovací pruh (ak je prítomný) do pravej časti klientskej oblasti. Toto je implicitné.

WS_EX_RTLREADING

Vytvára okno s textom zobrazeným s použitím poradia čítania sprava doľava.

WS_EX_STATICEDGE

Vytvára okno s trojrozmerným štýlom ohraničenia. Tento štýl je určený pre položky, ktoré neakceptujú vstup od užívateľa.

WS_EX_TOOLWINDOW

Vytvára okno s nástrojmi.

WS_EX_TOPMOST

Vytvorí okno, ktoré bude umiestnené nad všetkými oknami, ktoré sú najvyššie a zostane nad nimi.

WS_EX_TRANSPARENT

Vytvára priehľadné okno. Všetky okná, ktoré toto okno zakrýva, najprv prímu správu WM_PAINT a vytvoria tak zdanie priehľadnosti.    

WS_EX_WINDOWEDGE

Vytvára okno, ktoré má ohraničenie s vyvýšenou hranou.

Tabuľka 5: Štýly okien

Štýly okien

Význam

WS_BORDER

Vytvára okno, ktoré je ohraničené tenkou čiarou.

WS_CAPTION

Vytvára okno s titulkovým pruhom, obsahuje štýl WS_BORDER.

WS_CHILD

Vytvára dcérske okno alebo ovládací prvok. Ak je použitý tento štýl, nie je možné použiť štýl WS_POPUP.

WS_CHILDWINDOW

Rovnaký štýl ako WS_CHILD.

WS_CLIPCHILDREN

Keď dôjde k vyfarbovaniu, orezáva dcérske okná ovládacieho prvku. Štýl sa používa pri vytváraní materských okien.

WS_CLIPSIBLINGS

Keď dôjde k vyfarbovaniu, orezáva dcérske okná, ktoré spolu súvisia. Ak nie je špecifikovaný štýl a dcérske okno obdrží správu WM_PAINT, bude v aktualizovanej oblasti zahrnutá celá oblasť okna a to aj vtedy, keď je prekrytá súrodencovým oknom. Keď je štýl použitý, potom je oblasť ktorú súrodencove okno zaberá, vynechaná z aktualizovanej oblasti.

WS_DISABLED

Vytvára okno, ktoré je spočiatku blokované. Blokované okno nemôže prijať vstup od užívateľa.

WS_DLGFRAME

Vytvára okno, ktoré má ohraničenie štýlom, ktorý sa používa u dialógových okien. Okná vytvorené týmto štýlom, nemôžu mať titulkový pruh.

WS_GROUP

Označí prvý ovládací prvok v skupine ovládacích prvkov. Ďalší ovládací prvok, ktorý má štýl WS_GROUP, skupinu ukončuje a začína novú skupinu. Prvý ovládací prvok v každej skupine má obvykle nastavený štýl WS_TABSTOP, takže užívateľ sa môže pohybovať zo skupiny na skupinu. Prepínače sú bežné zoskupované dohromady, aby mohli byť k výberu inej možnosti použité klávesy so šípkami.

WS_HSCROLL

Vytvára okno s horizontálnym rolovacím pruhom.

WS_ICONIC

Štýl je ekvivalentný štýlu WS_MINIMIZE.

WS_MAXIMIZE

Vytvára okno, ktoré je na začiatku maximalizované.

WS_MAXIMIZEBOX

Vytvára okno s tlačidlom Maximalizovať.

WS_MINIMIZE

Vytvára okno ktoré je na začiatku minimalizované.

WS_MINIMIZEBOX

Vytvára okno s tlačidlom Minimalizovať.

WS_OVERLAPPED

Vytvára okno s titulkovým pruhom a ohraničením.

WS_OVERLAPPEDWINDOW

Kombinácia štýlov WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX a WS_MAXIMIZEBOX.

WS_POPUP

Vytvára prekryté okno. Tento štýl nemôže byť použitý so štýlom WS_CHILD.

WS_POPUPWINDOW

Kombinácia štýlov WS_BORDER, WS_POPUP a WS_SYSMENU. Aby bolo možné zobraziť systémové menu, musí byť špecifikovaný štýl WS_CAPTION.

WS_SYSMENU

Vytvára okno, ktoré má v titulkovom pruhu políčko Systémové menu. Musí byť špecifikovaný štýl WS_CAPTION.

WS_SIZEBOX

Vytvára okno u ktorého je možné meniť jeho veľkosť. Štýl je ekvivalentný štýlu WS_THICKFRAME.

WS_TABSTOP

Špecifikuje ovládací prvok, na ktorom sa zastaví kláves tabulátora.

WS_THICKFRAME

Vytvára okno s ohraničením, pomocou ktorého je možné meniť jeho veľkosť.

WS_TITLED

Štýl je ekvivalentný štýlu WS_OVERLAPPED.

WS_TITLEDWINDOW

Štýl je ekvivalentný štýlu WS_OVERLAPPEDWINDOW.

WS_VISIBLE

Vytvára okno, ktoré je na začiatku zobrazené.

WS_VSCROLL

Vytvára okno s vertikálnym rolovacím pruhom.

 

Program preložíte takto: spustite program Qeditor.exe, vložte zdrojový kód a v menu Project vyberte voľbu Build All.

(z priestorových dôvodov sme listing programu umiestnili na našej web stránke www.pcrevue.sk)

Tip na doma

Skúste experimentovať s nastavovaním štýlov okien, môžete použiť štýly z tabuľky 4 a 5.

Slovník skratiek

CUI (Console User Interface) – Textové užívateľské rozhranie.
GUI (Graphic User Interface) – Grafické užívateľské rozhranie.

HANDLE – je 32-bitové číslo identifikujúce daný objekt, napr. okno.

WIF (Windows Include File) – súbor s názvom windows.inc obsahuje dôležité definície štruktúr a konštánt systému Windows. Bez tohto súboru by bolo programovanie v assembleri veľmi neprehľadné a samozrejme nečitateľné.

 

 


Nechajte si posielať prehľad najdôležitejších správ emailom

Mohlo by Vás zaujímať

Ako na to

Tipy a triky: Ako na snímku obrazovky na akomkoľvek počítači s Windows?

02.12.2016 00:13

Ak snímky obrazovky robíte často apotrebujete napríklad funkcie na posun stránok alebo snímanie zobrazenia pri vyššom rozlíšení displeja, zrejme používate nejakú špecializovanú aplikáciu. Väčšina použ ...

Ako na to 1

Tipy a triky: Ako aplikácii prednastaviť spúšťanie s administrátorskými právami?

30.11.2016 00:10

Väčšina aspoň trochu skúsenejších používateľov vie, že aj keď máte na operačnom systéme Windows vytvorený administrátorský účet, aplikácie pre bezpečnosť nefungujú vždy splnými administrátorskými práv ...

Ako na to 2

Tipy a triky: Ako vypnúť uzamykaciu obrazovku vo Windows 10?

29.11.2016 00:10

Rozčuľuje vás, že pred každým prihlásením doúčtu vášho počítača musíte prejsť uzamykacou obrazovkou? Windows 10 na tejto obrazovke ukazuje čas,dátum anejakú zaujímavú fotografiu zrôznych kútov sveta. ...

Žiadne komentáre

Vyhľadávanie

Kyocera - prve-zariadenia-formatu-a4-s-vykonom-a3

Najnovšie videá