Konular

WinBinder İncelenmesi

WinBinder indirmek ve yüklemek , WinBinder Yapısı Hakkında Bilgiler , WinBinder Örnekleri , WinBinderda Klaslar ve Fonksiyonlar

WinBinder İndirmek ve Kurmak




Önce www.winbinder.org sitesine girilir ve ardından “Download” kısmına tıklanır.



Ardından WinBinder.Setup yazan yere tıklanır ve download edilir.

 

Ardından indirilen Setup dosyası calıştırılır.

 

Ardında Next diyerek devam edilir.





Ardından programın kurulacağı yer belirlendikten sonra yine Next butonuna tıklanarak kuruluma devam edilir.





Bu kısımda kurmak istediklerinizi seçiniz.




Daha sonra Next , Next , Next diyerek programın kurulmasını bekleyiniz.



WinBinder Yapısı Hakkında

WinBinder açık kaynak kodlu bir PHP eklentisidir. PHP programcılarının kolayca 32 bitlik yerel Windows uygulamaları oluşturmalarını sağlar. PHP'nin esnek yapısı sayesinde çok az kod satırı ile fonksiyonel programlar hazırlanabiliyor.

WinBinder esas avantajını resmi olarak PHP  4.3 ile tanıtılmış olan CLI SAPI (Command Line Interface / Server Application Programming Interface)'den almaktadır. 3. parti DLL (Windows Kütüphanesi)'ler PHP'yi Wİndows geliştirme ortamı olarak kullanmak için yetenekli hale getiriyorlar. Bu kütüphaneler pencereleri, kontrolleri, mesajları, zamanlayıcıları, windows kayıt defterini, GDI (Windows' Graphic Device Interface) ve daha fazlasını yönetmek için kodlar içeriyor.Bir grup düşük seviyeli (low-level) fonksiyon, programcının istediği Windows fonksiyonuna erişmesine, yapılar tanımlamasına ve belleğe doğrudan erişmesine izin veriyor.

Kontroller doğrudan WinBinder fonksiyonuları çağrılarak veya 3. parti form tasarım yazılımların oluşturduğu RC dosyaları (Resource) ile oluşturulabilir. Bu kaynak dosyalar fazladan bir derleme aşamasına gerek bırakmadan doğrudan (RC) çalışma anında parselleniyor.

Aşağıdaki diyagram WinBinder'ın Windows uygulamalarını oluştururken kullandığı mekanizmayı anlatıyor.

WinBinder İncelenmesi


WinBinder Örnekleri

Winbinder ile "Merhaba Dünya" diyelim.

Code:
 
<?php 
 
/* Aşağıdaki kod ile küçük bir windows penceresi oluşturulmakta ve "Hello" yazısı ekrana yazdırılmaktadır.
*/
include "../include/winbinder.php";     //  WinBinder library paketi include ediliyor 
 
/* aşağıdaki "wb_create_window()" fonksiyonu ile "480 ,320" ebatlarında bir pencere oluşturulmakta ve fonksiyonun 3. Argümanında "Hello" yazısı pencere fonksiyonuna yüklenilmektedir. ve devam eden Argümanlarda pencere boyutları verilmiştir.
bu fonksiyon "winbinder.php" libary 'in içerisinden çağırılmaktadır.
*/
 
wb_create_window(NULL, PopupWindow, "Hello!", 480, 320);  // Yeni Pencere 
wb_main_loop();                                                 
 
?> 

 



Yukarıdaki kodun ekran çıktısı!

WinBinder İncelenmesi

ve diğer ekran görüntüleri aşağıdadır.

WinBinder İncelenmesiWinBinder İncelenmesi
WinBinder İncelenmesi

WinBinder Sınıf(class)ları

PHP sabitlerini takip ederek WinBinder tarafından tanımlanmış sınıflar:

Window classes

AppWindow
ModalDialog
ModelessDialog
NakedWindow
PopupWindow
ResizableWindow
ToolDialog

Control classes

Accel
Calendar
CheckBox
ComboBox
EditBox
Frame
Gauge
HTMLControl
HyperLink
ImageButton
Label
ListBox
ListView
Menu
PushButton
RadioButton
RTFEditBox
ScrollBar
Slider
Spinner
StatusBar
TabControl
ToolBar
TreeView

System constants

WBC_VERSION

Style flags

WBC_BORDER
WBC_BOTTOM
WBC_CENTER
WBC_CHECKBOXES
WBC_CUSTOMDRAW
WBC_DEFAULTPOS
WBC_DISABLED
WBC_ELLIPSIS
WBC_ENABLED
WBC_GROUP
WBC_IMAGE
WBC_INVISIBLE
WBC_LEFT
WBC_LINES
WBC_MASKED
WBC_MIDDLE
WBC_MULTILINE
WBC_NOTIFY
WBC_NUMBER
WBC_READONLY
WBC_REDRAW
WBC_RIGHT
WBC_SINGLE
WBC_SORT
WBC_TASKBAR
WBC_TOP
WBC_VISIBLE

Notification message flags

WBC_DBLCLICK
WBC_MOUSEMOVE
WBC_MOUSEDOWN
WBC_MOUSEUP
WBC_KEYDOWN
WBC_KEYUP
WBC_GETFOCUS
WBC_REDRAW
WBC_RESIZE
WBC_HEADERSEL

Additional notification message flags

WBC_ALT
WBC_CONTROL
WBC_SHIFT
WBC_LBUTTON
WBC_MBUTTON
WBC_RBUTTON

Message box and beep types

WBC_BEEP
WBC_INFO
WBC_OK
WBC_OKCANCEL
WBC_QUESTION
WBC_STOP
WBC_WARNING
WBC_YESNO
WBC_YESNOCANCEL

Window states

WBC_MAXIMIZED
WBC_MINIMIZED
WBC_NORMAL

Area types

WBC_MINSIZE
WBC_MAXSIZE
WBC_TITLE

Windows standard identifiers

IDABORT
IDCANCEL
IDCLOSE
IDDEFAULT
IDHELP
IDIGNORE
IDNO
IDOK
IDRETRY
IDYES

Font attributes

FTA_BOLD
FTA_ITALIC
FTA_NORMAL
FTA_REGULAR
FTA_STRIKEOUT
FTA_UNDERLINE

RGB standard colors

BLACK
BLUE
CYAN
DARKBLUE
DARKCYAN
DARKGRAY
DARKGREEN
DARKMAGENTA
DARKRED
DARKYELLOW
GREEN
LIGHTGRAY
MAGENTA
RED
WHITE
YELLOW
NOCOLOR 

BGR standard colors

bgrBLACK
bgrBLUE
bgrCYAN
bgrDARKBLUE
bgrDARKCYAN
bgrDARKGRAY
bgrDARKGREEN
bgrDARKMAGENTA
bgrDARKRED
bgrDARKYELLOW
bgrGREEN
bgrLIGHTGRAY
bgrMAGENTA
bgrRED
bgrWHITE
bgrYELLOW
bgrNOCOLOR 

 

WinBinder Fonksiyonlar

Kategorilere Göre Fonksiyonlar

Aşağıdaki liste Winbinder’in temel fonksiyonlarının kategorilere göre listelenmiş halini göstermektedir. Bu fonksiyonlar “wb” ön ekiyle başlamaktadır. Bazı fonksiyonlar birden fazla kategoride görülebilmektedir.

Kontrol Fonksiyonu: Bu fonksiyonlar WinBinder denetimleriyle ilgilidir.
Diyalog Fonksiyonu: Bu fonksiyonlar standart diyalog ve mesaj kutularıyla ilgilidir.        
Çizim Fonksiyonu: Bu fonksiyonlar piksel,doğru ve yazı çizen fonksiyonlardır.
Düşük Seviye Fonksiyonu : Bu fonksiyonlar Windowsa direk erişim ve diğer düşük seviye uygulamaları içindir.
Resim Fonksiyonu : Bu fonksiyonlar Bitmapler, iconlar ve imleçler ile ilgilidir.
Sistem Fonksiyonu: Bu fonksiyonlar işletim sistemi ile ilgilidir.
Pencere Fonksiyonu: Bu fonksiyonlar windowsla birlikte çalışır.Bazıları denetimlerle birlikte de çalışır.

 

Kontrol fonksiyonu

Bu fonksiyonlar WinBinder denetimleriyle ilgilidir.

wb_create_control - Kontrol, menü oluşturur
wb_create_items – Bir kontrol veya menüde bir veya birden daha fazla item oluşturur
wb_delete_items – Kontrol veya menüden item siler
wb_destroy_control – Kontrolü ortadan kaldırır
wb_get_class - Bir kontrol, pencere veya menü klasını sınırlar
wb_get_control – Bir diyalog kutusu veya menüde kontrolü ele almaya yarar
wb_get_enabled – Sadece bir kontrolü mümkün kılar
wb_get_focus - Klavyenin odaklandığı pencere veya kontrole geri dönüşü sağlar
wb_get_id - Bir kontrol veya pencerenin belirlenmesini sağlar
wb_get_item_count - Bir objede item sayısına dönüşü sağlar
wb_get_item_list - İtemler veya kontrollerle düzene dönüşü sağlar
wb_get_level -  Kontrol iteminin seviyesini bulup getirir
wb_get_parent - Kontrol veya item ailesine dönüşü sağlar
wb_get_position - Bir kontrol veya pencerenin pozisyonunu bulup getirir
wb_get_selected - Bir veya daha fazla itemin seçilmiş haline dönüşü sağlar
wb_get_size - Kontrol  veya pencerenin büyüklüğünü düzenler
wb_get_state - Kontrol iteminin durumunu düzenler
wb_get_text - Bir kontrol, pencere, menü itemi, item, veya alt itemden yazı alır
wb_get_value – Bir kontrol, item veya alt itemin değerini düzenler
wb_get_visible - Sadece bir objeyi görünür kılar
wb_refresh – Bir objeyi yeniler veya yeniden çizer
wb_set_area - Pencerede belirli bir alanı ayarlar
wb_set_enabled – Bir kontrolü mümkün kılar
wb_set_focus – Bir objeye odaklanmayı ayarlar
wb_set_font – Bir kontrolün fontunu ayarlar
wb_set_image – Bir objeye bir resim atar
wb_set_item_image - Bir kontrol itemine bir resmin bir parçasını atar
wb_set_location - HTML kontrolünün lokasyonunu ayarlar veya ona özel bir komut gönderir
wb_set_position – Bir objeyi hareket ettirir
wb_set_selected - Bir kontrolün bir veya daha fazla itemini seçer
wb_set_size – Bir objenin büyüklüğünü ayarlar
wb_set_state - Bir treeview nodeun durumunu ayarlar
wb_set_style - Bir objenin stilini ayarlar
wb_set_text -  Bir objenin tekstini ayarlar
wb_set_value - Bir kontrolün değerini veya minimum ve maksimum alanını ayarlar
wb_set_visible – Bir objeyi gösterir veya saklar
wb_sort - Bir kontrolün içeriğini sınıflar

Diyalog Fonksiyonu

Bu fonksiyonlar standart diyalog ve mesaj kutularıyla ilgilidir.                     

wb_message_box – Mesaj kutusunu görüntüler
wb_sys_dlg_color - Standart “renk seç” diyalog kutusunu görüntüler
wb_sys_dlg_open - Standart “aç” diyalog kutusunu görüntüler
wb_sys_dlg_path - Standart “yol seç” diyalog kutusunu görüntüler
wb_sys_dlg_save - Standart “kaydet” diyalog kutusunu görüntüler

Çizim Fonksiyonu

Bu fonksiyonlar piksel,doğru ve yazı çizen fonksiyonlardır

wb_draw_image - Işık geçirmez ve transparan bitmap çizer
wb_draw_line - Düz çizgi çizer
wb_draw_point – Renk noktası çizer
wb_draw_rect – Boş dikdörtgenler çizer
wb_draw_text – Tekst dizgileri çizer
wb_get_pixel - Bir pixelin RGB renk değerine dönüşü sağlar

 

Düşük Seviye Fonksiyonu

Bu fonksiyonlar Windowsa direk erişim ve diğer düşük seviye uygulamaları içindir.

wb_call_function – Bir DLL fonksiyonunu arar
wb_create_image - DIB parametreleriyle bir resim oluşturur
wb_load_library - Hafızaya bir DLL yükler
wb_get_address - Bir değişkenin adresine dönüşü sağlar
wb_get_function_address - Bir kütüphane fonksiyonun adresini düzenler
wb_get_image_data - Bir resmin doğru renk tanımlanmasına yardımcı olur
wb_peek - Bir hafıza alanının içeriğini alır
wb_poke - Bir hafıza alanının içeriğini ayarlar
wb_release_library - Hafızadan Bir DLL’i serbest bırakır
wb_send_message - Bir objeye bir Windows mesajı gönderir

Resim Fonksiyonu

Bu fonksiyonlar bitmapler, iconlar ve imleçler ile ilgilidir.

wb_create_image – Bir resim oluşturur
wb_create_mask – Transparan bir resim oluşturur
wb_destroy_image – Resmi ortadan kaldırır
wb_load_image - Diskten bir resim dosyası yükler
wb_get_image_data - Bir resmin doğru resim tanımlanmasına geri dönüşü sağlar
wb_get_size - Bir resmin boyutlarını alır
wb_save_image - Diske resmi kaydeder
wb_set_image – Bir objeye resim atar
wb_set_item_image -Bir kontrol itemini resmin bir parçasın atar

Sistem Fonksiyonu

Bu fonksiyonlar işletim sistemi ile ilgilidir.

wb_exec – Bir komutu açar veya uygulamaya koyar.
wb_create_font – Bir font oluşturur.
wb_create_timer – Bir zamanlayıcı oluşturur.
wb_destroy_font – Bir fontu ortadan kaldırır.
wb_destroy_timer – Bir zamanlayıcıyı ortadan kaldırır.
wb_find_file - Windows ve Sistem dizinlerinde dosya bulur.
wb_get_instance - WinBinder uygulamalarının örneklerini bulur.
wb_get_registry_key - Kayıt girişinin değerine dönüşü sağlar.
wb_get_system_info - Kullanılan sistem hakkında çeşitli veriler sağlar.
wb_main_loop - Windows ana döngüsünü giriş sağlar
wb_play_sound – Sağlam bir sistem çalar
wb_set_registry_key - Giriş değerini ayarlar
wb_wait - Fare ve klavye statülerini doğrular ve bir erteleme oluşturur

Pencere Fonksiyonu

 Bu fonksiyonlar windowsla birlikte çalışır.Bazıları kontrollerle birlikte de çalışır.

wb_create_window – Pencere oluşturur
wb_destroy_window – Pencereyi ortadan kaldırır
wb_get_class -Kontrol, pencere veye menü klasını bulup getirir
wb_get_focus - Klavyenin odaklandığı pencere veya kontrole geri döner
wb_get_id - Bir kontrol veya pencerenin belirlenmesini sağlar
wb_get_item_count - Bir obje içindeki item sayısına dönüşü sağlar
wb_get_item_list – Çocuk item veya kontrollerle düzene dönüş sağlar
wb_get_parent - Kontrole veya ana iteme dönüş sağlar
wb_get_position - Bir kontrol veya pencerenin posisyonunu uygulamaya koyar
wb_get_size - Bir pencere veya kontrolün büyüklüğünü uygulamaya koyar
wb_get_text - Bir kontrol, pencere, menü itemi, item veya alt itemlerde tekst alışını sağlar
wb_get_visible – Bir objeyi görünür kılar.
wb_refresh – Bir objeyi yeniler veya yeniden çizer.
wb_set_focus – Bir objeye odaklanır.
wb_set_handler – Bir pencereye geri atama fonksiyonu atar.
wb_set_image – Bir objeye resim atar.
wb_set_position – Objeyi hareket ettirir.
wb_set_area – Pencerede belirli bir alan ayarlar.
wb_set_size – Objenin büyüklüğünü ayarlar.
wb_set_style – Objenin stilini ayarlar veya reset atar.
wb_set_text – Objenin tekstini ayarlar.
wb_set_visible – Objeyi gösterir veya saklar.
wb_wait - Fare ve klavyenin statüsünü belirler, geciktirme oluşturur


Kaynak Ruşan Sakarya
Yorumunuzu Ekleyin

Kurallı İfadeler (regex Engine)

Bir regex'in gerçekte nasıl çalıştığını bilmek daha efektif çalışan regex ifadeleri oluşturmamızı ve regex'leri daha isabetli oluşturmamızı sağlar. Bu yazımızda oluşturduğunuz regex ifadelerinin neden beklediğiniz sonuçları vermediğini ve umduğunuz eşleşmeleri yerine getirmediğini öğreneceksiniz. Bu da bizim tabir yerindeyse daha az kafa patlatmamızı ve daha az zaman harcamamızı sağlayacaktır.

44,051 Okunma 1 Yorum 14/07/2007 05:23:11

Nesneye Yönelimli Php

Classlarla ilgili ingilizce bir makale

36,478 Okunma Henüz yorum yapılmamış 06/01/2008 11:24:59

PHP ile PDF dosya oluşturmak

Php ile yeni bir pdf dosyası oluşturmak : Öncelikle php ile pdf işlemleri yapmak için bir pdf kütüphanesine ihtiyacınız olacak

35,361 Okunma Henüz yorum yapılmamış 06/09/2007 01:22:38

PHP nedir?

HTML kodlarının arasına yerleştirilmiş php kodlarından ayrıştırıp işleyerek sonuçta saf HTML formatında bir çıktı üretmek ve Web sunucusuna iletmektir.

34,522 Okunma Henüz yorum yapılmamış 26/09/2011 14:50:52

$_FILES

Örnek kod ve açıklamalar

34,073 Okunma 4 Yorum 30/12/2007 13:36:25

Php ile Oturum Yönetimi (SESSION)

Türkçesi oturum anlamına gelen session bilgilerin saklanması için kullanılan mantıksal bir nesnedir.Session oturum yönetimini kullanarak şifreli sayfalar oluşturarak ve bu sayfaları belirlediğiniz kullanıcıların görmesini sağlayabilirsiniz.

27,868 Okunma Henüz yorum yapılmamış 22/05/2013 16:29:40 22/05/2013 16:29:55

$_SERVER

$_SERVER host bilgileri, header bilgileri, yollar ve script yolları gibi bilgileri içeren bir dizidir. Bu dizideki değerler web server tarafından üretilir. Tüm server yazılımlarının, tüm değerleri atayacağına dair bir kesinlik yoktur. Yazılım bazılarını atamayabilir, veyahut burada anlatılacak değerlerin haricinde değerler ekleyebilir

27,695 Okunma Henüz yorum yapılmamış 23/10/2007 00:51:55

Oop - Nesne Yönelimli Programlama

Artık ister istemez her programcının bulaştığı bu teknik hakkında sayısız makale yazılmıştır bu güne kadar. Bu makale de onlardan biri

27,606 Okunma 1 Yorum 06/01/2008 11:26:55

Xampp Kurulumu

Xampp apache, mysql, php ve phpmyadmin için kolay ve basit kurulum sağlayan bir uygulamadır.

26,481 Okunma Henüz yorum yapılmamış 19/12/2011 10:00:36

Verileri doğrulamak için PHP ile filtreleme işlemleri

Ziyaretçilerden gelen verilerin istediğimiz formata uygunluğunu kontrol etmeliyiz ki, güvenlik açığı yaratmayalım. E-postaları, web adreslerini, bilgi girişlerini ve dahasını Her birine uygun farklı fonksiyonlar yazıldı bu vakte kadar. Ancak PHP 5.2.0 ve üstü sürümlerde bu fonksiyonlara gereksinim azaldı. Çünkü PHP filtreleme fonksiyonları standart oldu.

25,669 Okunma Henüz yorum yapılmamış 02/12/2008 04:19:24

Php İle Excel Dosyası Oluşturmak

Genelde, herhangi bir biçimlendirme söz konusu olmadığında, veritabanındaki bir bilgiyi ya da başka bir tabloyu excel ortamına aktarmak için csv yöntemini kullanırım. Bu yöntem herkesin bildiği gibi, her sütunu tab ya da noktalı virgül gibi bir karakterle ve her satırı da enter karakteri ile bölmekten ibaret. Ama biçimlendirme söz konusu olduğunda, mesela sütunlara bir genişlik vermek, yazıları bold yapmak, bazı hücreleri sayı ya da para tipine çevirmek gibi biçimlendirmelerde bu yöntem işe yaramamakta.

25,554 Okunma 1 Yorum 22/07/2008 01:35:17

$_ENV

25,303 Okunma Henüz yorum yapılmamış 31/12/2007 09:46:00

En iyi 25 php template motoru

Php tabanlı web siteleri dizayn ederken, php kodlarını html kodlar arasına gömeriz. Fakat gün gelir bu kodları düzenlemek istediğimizde çok büyük bir çaba gerektirir. Bu tarz durumlarla başa çıkabilmek için ve daha kararlı bir sistem kodlamak için tema sistemleri geliştirebilirsiniz. Tema sistemi ya da motorlarının asıl amacı, php kodları ile html kodlarını birbirinden ayırmaktır. Böylece hangi kod üzerinde değişiklik yapmanız gerekiyorsa, kendisine ait dosyalarını açarak bu işlemi gerçekleştirebilirsiniz

25,116 Okunma Henüz yorum yapılmamış 16/02/2008 01:35:10

Php Mysql to XML

Bu yapıyı geliştirerek mysql veritabanınızdaki datalarınızı xml standartlarına dönüştürebilirsiniz.

24,646 Okunma Henüz yorum yapılmamış 05/10/2008 01:56:47

Dizi Tanımlamaları

PHP’de array tanımlayıcısını kullanarak içerisinde elemanları yerleştirmek yoluyla ya da index numarasını köşeli parantezler içerisinde belirterek atama yaparak dizi oluşturmak mümkündür

24,299 Okunma Henüz yorum yapılmamış 23/10/2007 00:36:18

Harici Dosya İnclude

İnclude kullanımı ve örnekler

24,197 Okunma Henüz yorum yapılmamış 14/04/2008 01:42:12

$_REQUEST

$_GET, $_POST, ve $_COOKIE değişkenlerini içeriğinden meydana gelen çağrışımlı bir dizidir. Bu değişken bir superglobal olduğu için tüm alanlarda (scope) geçerlidir ve bundan dolayıdır ki global $_REQUEST ; şeklinde bir tanımlamaya ihtiyaç duymaz. Eğer register_globals değişkeni php. İni de ayarlanmışsa bu değişken her yerde (Global Scope) kullanılabilir

23,274 Okunma Henüz yorum yapılmamış 24/12/2007 00:16:58

if Kullanımı

20,864 Okunma Henüz yorum yapılmamış 09/04/2012 10:31:35 20/09/2014 18:01:36

Yükleniyor...