QT Creator, Trolltech tarafından geliştirilen bir (IDE) uygulama geliştirme ortamıdır. Eğer sadece QT uygulamaları geliştiriyorsanız (şuan için) tam size göre bir ortam. Gayet şık, hızlı ve hafif.
Sisteminize kurmak için aşağıdaki adresden platformunuza en uygun paketi indirebilirsiniz.
http://trolltech.com/developer/qt-creator/qt-creator#download-qt-creator
İlk izlenimlerimi aktarmam gerekirse;
Artıları
- Karşılama penceresi
- Gelişmiş C/C++ Editor
- Tümleşik form tasarımı : Form dosyasını açtığınızda QT Designer bileşenleri ekrandaki yerlerini alıyor ve tasarıma başlayabiliyorsunuz. QT Designer da yaptığınız tüm işlemleri, QT Creator içerisinden de yapabiliyorsunuz. Bir süredir Eclipse içerisinden ki QT Designer bileşenlerini kullanmıyor/kullanamıyordum. Çünkü ara sıra ekran kilitleniyor ya da bileşenler çok geç tepki veriyordu.
- Tümleşik yardım penceresi : Sınıf adının üzerine gelin ve F1 e basın :)
- Program gayet hızlı çalışıyor zaten boyut olarak ta çok küçük, doğal olarak daha az belleğe ihtiyaç duyuyor. (Eclipse göre çok ama çok iyi. Uzun süredir VS.NET kullanmadığım için VS.NET'göre bir kıyaslama yapamıyorum, artık siz deneyip görün)
- Gelişmiş filtre kutusu ile projelerde, kaynak kodlarda, yardım belgelerinde arama yapabilirsiniz.
- Proje oluşturma sihirbazı (QT Designer Form Class benim için çok önemli) : GUI, konsol projeleri ve c++ kütüphanesi(library) oluşturabiliyorsunuz.
- Designer içerisindeki hemen hemen her pencerede filtreleme yapılabiliyor. Bileşenler, özellikler hatta Actions içerisinde filtreleme yapabiliyorsunuz.
- Property Editor'un görüntü tipi değiştirilebiliyor : Bileşenlerin alt alta değilde tıpkı Visual Basic 6 Ya da Delphi 'deki gibi yan yana dizilmesini istiyorsanız Property Editorde sağ tıklayıp görüntü tipini değiştirebiliyorsunuz.
- Build&Run penceresinden çevre değişkenlerini düzenleyebiliyorsunuz.
- Debug desteği : GDB(GNU symbolic debugger) kullanılıyor.
Eksileri
QTicari, modüler otomasyon sisteminin beta-1 sürümü kullanıma hazır. Bu sürüm ile birlikte projenin lisansı da, GPLv3 olarak değiştirilmiştir. (Alpha-1 GPLv2 idi)
Projeye destek olmak için :
İlk seçenek tercihimizdir. :-)
Projenin kaynak kodları ve ekran görüntüleri için:
http://www.nesimia.com/projects/qticari adresine tıklayabilirsiniz.
Şuan proje içerisinde iki adet modül, barkod ve ticari modülleri tümleşik olarak gelmektedir. Bu modüller hakkında kısaca bilgi vermek gerekirse;
Ticari: Bünyesinde; cari, stok, kasa, fatura gibi temel muhasebe modüllerini barındıran paket.
Kullanım belgeleri için:
http://forums.nesimia.com/index.php?9 adresine tıklayın.
Barkod: Barkod etiket tasarımı yapıp, çıktı alabilmenize yarayan modül.
Kullanım belgeleri için:
http://forums.nesimia.com/list.php?15 adresine tıklayın.
Ayrıca;
Kurulum ve yapılandırma belgeleri için:
http://forums.nesimia.com/list.php?8 adresine tıklayın.
Forumlar için :
http://forums.nesimia.com/index.php?5 adresine tıklayın.
Önce "Istambul", şimdi de "Ali Baba"
QString t = "Ali Baba";
t.remove(QChar('a'), Qt::CaseInsensitive);
// t == "li Bb"
Kim bu "Ali Baba"?
;) QString Tamam anladık, kontrol basamağının nasıl hesaplanacağına dair bilgileri bir yerlerden bulup kopyaladınız ve sitenize eklediniz. Ama kardeşim, insan bilgilerin doğru olduğunu kontrol etmez mi? İşlem doğru yapılmış mı bir sağlama yapmaz mı?
Konu hakkında birkaç Türkçe makale ile karşılaştım. Anlatılanlar gibi yaparsanız kodunuz sadece EAN 13'de doğru çalışacaktır. Çünkü bir çoğunda, çift hanelerin toplamının 3 katının alınması gerektiği yazıyor. Oysaki EAN 8'de çift, EAN 13'de tek hanelerin toplamının 3 katı alınmalı. Her neyse biraz uğraştırdı ama konu hakkında İngilizce birkaç site(özellikle burası) bulunca sorunu çözdüm. Belki birilerinin işine yara diye yazdığım kodu sıcağı sıcağına buraya da yapıştırıyorum.
barkodUret() - v2 (Güncellendi)
QString seriBarkodTanimlari::barkodUret(int onEk, int baslangic){
QString std = ui.cBoxStandart->currentText();
QString strOnEk = QString::number(onEk);
QString strBaslangic = QString::number(baslangic);
QString barkod;
if ( (std == "EAN 8") || (std == "EAN 13") ){
int uzunluk = strOnEk.length() + strBaslangic.length() + 1; //+1 Kontrol Bit'i için
if ( (std == "EAN 8") && (uzunluk > 8) ) return QString();
else if ( (std == "EAN 13") && (uzunluk > 13) ) return QString();
if (std == "EAN 8") barkod.fill('0',8 - uzunluk);
else barkod.fill('0',13 - uzunluk);
barkod = strOnEk + barkod + strBaslangic;
uzunluk = barkod.length();
int tek = 0;
int cift = 0;
for (int i=0; i<uzunluk; i++){
if ( i%2) tek += barkod.mid(i,1).toInt();
else cift += barkod.mid(i,1).toInt();
}
int toplam;
if (std == "EAN 8") toplam = (cift * 3) + tek;
else toplam = (tek * 3) + cift;
int onunKati;
if (toplam%10 != 0)
onunKati = QString(QString::number(QString::number(toplam).mid(0, QString::number(toplam).length() - 1 ).toInt() + 1) + "0").toInt();
else
onunKati = toplam;
int checkDigit = onunKati - toplam;
return barkod + QString::number(checkDigit);
}
else return QString();
}
QByteArray ba("Istambul");
ba.fill('o');
// ba == "oooooooo"
ba.fill('X', 2);
// ba == "XX"
;-) QByteArray Bu yeni sürümde
- Dışarıdan (ayrı bir kütüphaneden) gelen verilerdeki tr karakter sorunu çözüldü. Özellikle libqti'de bulanan model'ler tr karakterleri bozuk olarak dönderiyor ve güncelliyordu.
- Null kolonlar okunamıyor ve kayıtlar arasında gezinirken bileşenin içeriği silinmiyordu. Önceki kaydın verisi kalıyor, buda sanki o kolonda veri varmış izlenimi oluşturuyordu. Bu sürümde oda ortadan kalktı.
- Artık veritabanına bağlanırken SET NAMES 'utf8' sorgusunun çalıştırılmasına gerek kalmadı.
Proje Sayfasına Gitmek İçin Tıklayın. Muhasebe İşlerinden Anlayan Hayırseverler Aranıyor başlıklı girdiden sonra tam anlamıyla proje üzerinde çalışmaya başlamıştım. Kimi zaman işlerim, kimi zamanda elde olmayan sebeplerden dolayı programın duyurusu bu kadar uzun sürdü. İnşallah bundan sonra düzenli olarak gelişimi devam edecektir.
Kısaca bahsetmek gerekirse aşağıdaki modüller hazır halde
- Cari
- Cari hareket bordroları (şuan için taksit hareketi çalışıyor ilerde çek, senet ...vb.)
- Stok
- Fatura (peşin alış/satış faturası, alış/satış faturası ve alıcılara taksitli satış yapabilme)
- Kasa
Yapılmayı Bekleyenler
- Açılışta ilk kurulumu gerçekleştirme (veritabanı, çeşitli ayarlar); - Başladı
- .deb, .pisi paketleri hazırlanacak
- Barkod yazdırma ve tasarımı (libbarcode ile tüm barkod standartları) - Başladı
- Fatura tasarımı
- Muhasebe
- ve kısmet olursa üretim (özel istek)
Geliştiriciler/Destekleyenler
- Nesimi ACARCA (Geliştirici)
- Yüksel SARIAHMET (S.M.M.M.)
- Özkan TURAN (Mali Müşavir)
Teşekkürler
QTicari, modüler otomasyon sistemi.
Şuan geliştirilme aşamasında olup, en güncel sürüm beta-1'dir. Beta-1 duyurusu için tıklayın.
Proje, içerisinde; barkod, ticari ve libqti adında üç paketi barındırmaktadır. Bunlar;
Bir kaç günden beri yakında duyurusunu yapacağım bir program için plugin arayüzü yazmaya çalışıyorum. İlkin her şey güzel gidiyordu, sonra birden hersey tersine döndü :( Signal/slot olayları için arayüzü shared library haline getirmem gerekti ve signal artık çalışıyordu. Fakat bir sorun var slot neden tetiklenmiyordu? Arayüz sınıfın çağırınca çalışıyor ama eklentiye çağrı yapılınca çalışmıyordu. Artık herşeyden şüphelenmeye başladım. Tüm fonksiyonları sanallaştırdım, statik yaptım, geri normale döndürdüm ama olmuyor. Bilgisayar başında çok durup aralıksız kod yazdıktan sonra artık en fazla 2dk sürecek bir işi bile yapmaktan çekiniyor insan. Ve bir anda kafamda koca bir ampül yanıverdi. Eklenti derlendikten sonra eski .so dosyasını silmiyordu ve ben artık en son nezamanın eklentisi ise onunla muhatab oluyordum. Allahım sorunu çözdümemi sevinsem, yoksa o kadar uraştığımamı ağlasam :)
|
En Son Yorumlar - Nesimi ACARCA:@Znrk
Aynen Katılıyorum. :)...
- Znrk:Evet neyin nasil hesaplandigi? Kesinlikle sorun bu. Gerci hesaplamalar her kurulusa gore de degisir ...
- Nesimi ACARCA:Yazım hatası, hemen düzeltiyorum. :) Ayrıca ilginiz için teşekkürler. Mail yoluyla sizinle il...
- Alparslan Duran:Selamlar e mail adresinizi anlamadım o aradaki (qt) @ anlamına mı gelmekte ???
Neys...
- TEYMUR:iyi videosu olsa lap iyi
...
- Nesimi ACARCA:>İnşallah diğer başlıyıpta sonlanamayan (Turquaz, Tekir, Muhasebeci) projeler gibi sonuçl...
- Ali Kaya:Merhaba ellerinize sağlık.
İnşallah diğer başlıyıpta sonlanamay...
- Nesimi ACARCA:İşte buna sevindim. :-)
Yukarıdaki yorumda da belirttiğim gibi gün...
- kullanici ismi:Tum sistemi testing (lenny) surumune yukseltince versiyon 4.4.0-4 oldu ve bu sekilde derlendi.
&...
- Nesimi ACARCA:QT'yi 4.4.1'e yükseltebilir misiniz? Çünkü, sisteminizde kurulu olan QT'nin QSqlDriv...
|