- Info
- Oktatás
- Web
- Tudás
- Webfejlesztés
- Apache, MySQL, PHP, MSSQL, PostgreSQL
- Design Témák
- Drupal tudnivalók
- Melyik PHP?
- MySQL problémák
- Keresőoptimalizálás, keresőmarketing - SEO
- SourceCop-pal védett fájlok dekódolása
- WEB böngészőkre vonatkozó statisztikák
- Webes programozás
- Zend Framework programozás kezdőknek
- 01 Zend Framework Könyvtárak felépítése
- 02 Index.php fájl és Apache htaccess file készítése
- 03 Controller és View létrehozása
- 04 Action URL felépítése és Controller
- 05 URL Struktúra és Action
- 06 GET paraméterek
- 07 footer és header használata
- 08 Zend Framework adatbázisok kezelése. Csatlakozás, adatfelvitel
- 09 Adatok listázása, Szerkesztő Űrlap, Adatok szerkesztése
- 10 Zend Framework Registry string tömb objektum tárolása
- 11 Zend Framework konfiguráció használata
- 12 Zend Framework authentikáció
- 13 Zend Framework Session használata
- 14 Bootstrap fájl használata
- Weboldalak tervezése
- Drupal
- Linux
- PC hardver
- PDA, PNA, Telefon, MIo A701 HTC Touch Cruise
- Felhasználói és segédprogramok
- Szoftverek leírása
- Túlélőkészlet PC-khez
- Vírusok és társaik
- Windows
- Webfejlesztés
- Fotók
- Állandó fotóalbumok
- Horvátország
- Franciaország
- Nagybánya
- 2009 Görögország
- Prága, Krakkó, Karlovy Vary
- Olaszország
- Nagy Britannia
- Svájc 2004
- Síelés
- Barátok, osztálytársak, események, bulik
- Kirándulások
- Osztálykirándulások
- Zene
- Pedig az Icának tetszik
- AS együttes
- Szerzemények vagy fordítások
- Koncertek
- Zenetanulás
- Gitártanulás
- Gitártanulás 2
- Gitárvásárlási tanácsok
- Énektanulás kezdőknek 1
- Énektanulás kezdőknek 2
- 4. Énektanulás kezdőknek - Színpadi előadás
- Basszusgitár tanulás 1.
- Basszusgitár tanulás 2
- Basszusgitár tanulás 3
- Basszusgitár tanulás 4
- Basszusgitár tanulás 5
- Basszusgitár tanulás 7
- Elektromos gitárok működése
- Énektanulás kezdőknek 3 - zenekari próba
- Szilykon iskolazenekar
- Griff Együttes
- Linkgyűjtemény zenészeknek
- Kedvenc zenészek, zenekarok
- Egyéb
- Letöltés
PHP EXE programmá fordítása 2.
fz, 2009, május 4 - 1:38du
Az előző oldalon megtanultuk, hogyan lehet egyáltalán EXE fájlt készíteni. most megnézzük, hogyan lesz ablakozós a program.
Az ablakozó programok két részből állnak:
1. Definiálni kell az ablakokat és meg kell jeleníteni azokat
2. Az ablakokkal történő eseményeket fel kell dolgozni.
A Windowsos alkalmazás elkészítéséhez be kell ágyazni a winbinder.PHP-t
include("include/winbinder.php");
A windowsos programok ablakozó rendszerét létre kell hozni
$mainwin = wb_create_window(NULL, "ablak neve", "alkalmazás neve",szélesség, magasság);
Definiálni kell grafikus elemeket:
$label = wb_create_control($mainwin, Label, $Errormsg, 10, 12, WIDTH-40, HEIGHT-150, 0, WBC_CENTER);
wb_set_font($label, wb_create_font("Tahoma", 10, null, FTA_BOLD));
$statusbar = wb_create_control($mainwin, StatusBar, date("Y.m.d H:i:s A"));
A Windowsos programok egy végtelen ciklusban futnak és várják a felhasználó beavatkozását. Ez az indulás után főprogram, amit az alábbi paranccsal lehet beállítani:
wb_set_handler($mainwin, "process_main");
Ezt a függvényt persze definiálni is kell, például egy include fájlban:
function process_main($window,$id){
switch ($id){
case IDEVENTVALAMI
más műveletek...
break
case IDCLOSE
wb_destroy_font();
wb_destroy_window($window);
break;
stb....
}
}
A programot láthatóvá kell tenni:
wb_set_visible($mainwin, TRUE);
És el kell indítani a főprogramot:
wb_main_loop();
A teljes példaprogram kb így néz ki:
<?php
define('APPNAME', "logon/logoff progi v1.4");
define("WIDTH", 400);
define("HEIGHT", 300);
define("IDEVENTCLOSE",1024);
include ("include/winbinder.php"); // Include WinBinder library
if(wb_get_instance(APPNAME, TRUE)) die();
$mainwin = wb_create_window(NULL, PopupWindow, APPNAME, WIDTH, HEIGHT); // Create application window
// Create label control inside the window
if(!$help){
$label = wb_create_control($mainwin, Label, $Errormsg, 10, 12, WIDTH-40, HEIGHT-150, 0, WBC_CENTER);
}else{
$label = wb_create_control($mainwin, Label, $Errormsg, 10, 12, WIDTH-40, HEIGHT-150, 0);
}
//Betűtípus állítása
wb_set_font($label, wb_create_font("Tahoma", 10, null, FTA_BOLD));
//Windows handler
wb_set_handler($mainwin, "process_main");
// Create status bar
$statusbar = wb_create_control($mainwin, StatusBar, date("Y.m.d H:i:s A"));
wb_set_font($statusbar, wb_create_font("Tahoma", 8));
//Csak akkor számít, ha az ismételt belépés volt.
if(!$help){
//Ha kilépés volt
if($EventID == 538) {
$BtnText='Belépés';
$EventID = 540;
$Event = $BtnText;
}else{
$BtnText='Kilépés';
$EventID = 538;
$Event = $BtnText;
}
$dx = mt_rand(-100,100);
$dy = mt_rand(-10,10);
$EventExit = wb_create_control($mainwin, PushButton, $BtnText, (int)(WIDTH / 2) - 60+$dx, HEIGHT-140+$dy, 120, 20, IDEVENTCLOSE, WBC_CENTER);
wb_set_font($EventExit, wb_create_font("Tahoma", 10, null, FTA_BOLD));
}
$Exit = wb_create_control($mainwin, PushButton, "&Ok", (int)(WIDTH / 2) - 30, HEIGHT-100, 60, 20, IDCLOSE, WBC_CENTER);
wb_set_font($Exit, wb_create_font("Tahoma", 10, null, FTA_BOLD));
// Enter application loop
//wb_set_image($mainwin, 'amcelogon.ico');
wb_set_visible($mainwin, TRUE);
wb_main_loop();
//-------------------------------- FUNCTIONS -----------------------------------
/* Process main window commands */
function process_main($window, $id)
{
global $label, $statusbar;
static $pos;
switch($id) {
case IDEVENTCLOSE:
regisztracio(); //Itt egy nem publikus kódrészlet van
case IDCLOSE:
wb_destroy_window($window);
wb_destroy_font();
break;
}
}
?>














