Türetilmiş Formda Design Timede Boyut Sorunu
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Türetilmiş Formda Design Timede Boyut Sorunu
Arkadaşlar benim sorunum şu.Base formum var tasarladım ettim.Ancak bundan türettiğm formların boyutlarını kontrol edemiyorum.Mesela formun yeni boyutunu ayarlıyorum bve kaydediyorum.Projeyi kapatıp açtığımda ise formun boyutu gene alakasız bir hale geliyor.Formun creatine kod ile boyutunu ayarlayabilirim ancak disayn timede sorun çıkartıyor rahat çalışamıyorum.Ayrıca zaten türetilmiş formun amacı ise bu tür kodları tekrar tekrar yazmamak o zamanda bu amaçtan sapıyorsunuz.Gerçi onada gene razıyıım ama dediğim gibi tasarım anında form benim seçtiğim boyutlarım kabul etmiyor
Formun height özelliği 517 den fazla olmuyor.Ben 560 yapıyorum kapatıp açınca sonuç gene 517.Anlamadım giti.Acaba bunun için ne yapabiliriz.Teşekkürler.Kolay gelsin.
Formun height özelliği 517 den fazla olmuyor.Ben 560 yapıyorum kapatıp açınca sonuç gene 517.Anlamadım giti.Acaba bunun için ne yapabiliriz.Teşekkürler.Kolay gelsin.
Herhalde bu 517 de ata olan formunuzun yüksekliği olsa gerek...
Kullandigim formlarin tamami turetilmis formlar ve bu tarz bir problemi bir ara yasamistim galiba... Emin olamiyorum.... Nedeni konusunda aklıma gelen tek ihtimal form ozelliklerinden birinin bu duruma neden olabilecegi ya da bu durumdan kurtarabilecegi... En azindan bendeki sıradan bir turetilmis formun ozelliklerini gostereyim, siz farkli olanlari deniyerek durumu bir test edin...

Kullandigim formlarin tamami turetilmis formlar ve bu tarz bir problemi bir ara yasamistim galiba... Emin olamiyorum.... Nedeni konusunda aklıma gelen tek ihtimal form ozelliklerinden birinin bu duruma neden olabilecegi ya da bu durumdan kurtarabilecegi... En azindan bendeki sıradan bir turetilmis formun ozelliklerini gostereyim, siz farkli olanlari deniyerek durumu bir test edin...

* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

Fahrettin Abi öncelikle ilgilendiğiniz için teşekkür ederim.
Dediğiniz gibi bu formun bir özelliğinden kaynaklanıyor olabilir.Ancak resimde gösterdiğinzi özelliklerle aynıydı formumun özellikleri.Bir ikisi vardı değiştirdim ama gene aynı.
Ben şöyle daha ayrıntılı açıklayayım size.Bir temel formum var.Adı frmBase, sonra bundan FrmDatabase formunu türetiyorum.Şimdi bu ikinci sınıfta ikinci türemiş formda bir sorun yok.Yani boyutlarını ayarlayamama vb.falan.Ancak FrmDatabaseden türettiğim formda bu sorunu yaşıyorum.İşin enteresan tarafı ne FrmBase nede FrmDatabase'in Height özelliği 517 değil.Yani bu 517 yide anlayamadım.Formumun boyutunu falan ayarlıyorum düzeltip derliyorum sorun yok.Ama projeyi kapat aç form küçüldüğü için nesneleri göremiyorum.Tekrar ayarla falan.Mesela FrmDataBase üzerinde bir DBGridim var.Bu gridi küçücük yapıyorum.Türemiş formumda ise bu DBGridi normal büyük boyutlara çekiyorum.Hiç sorun yok.Proje açılıp kapanınca DBGrid gene büyük olarak açılıyor yani gridde sorun yok diğer nesnelerde de.Sadece formda.
İlginiz için tekrar teşekkürler.
Dediğiniz gibi bu formun bir özelliğinden kaynaklanıyor olabilir.Ancak resimde gösterdiğinzi özelliklerle aynıydı formumun özellikleri.Bir ikisi vardı değiştirdim ama gene aynı.
Ben şöyle daha ayrıntılı açıklayayım size.Bir temel formum var.Adı frmBase, sonra bundan FrmDatabase formunu türetiyorum.Şimdi bu ikinci sınıfta ikinci türemiş formda bir sorun yok.Yani boyutlarını ayarlayamama vb.falan.Ancak FrmDatabaseden türettiğim formda bu sorunu yaşıyorum.İşin enteresan tarafı ne FrmBase nede FrmDatabase'in Height özelliği 517 değil.Yani bu 517 yide anlayamadım.Formumun boyutunu falan ayarlıyorum düzeltip derliyorum sorun yok.Ama projeyi kapat aç form küçüldüğü için nesneleri göremiyorum.Tekrar ayarla falan.Mesela FrmDataBase üzerinde bir DBGridim var.Bu gridi küçücük yapıyorum.Türemiş formumda ise bu DBGridi normal büyük boyutlara çekiyorum.Hiç sorun yok.Proje açılıp kapanınca DBGrid gene büyük olarak açılıyor yani gridde sorun yok diğer nesnelerde de.Sadece formda.
İlginiz için tekrar teşekkürler.
Kod: Tümünü seç
inherited FrmHastaKaydet: TFrmHastaKaydet
Caption = 'FrmHastaKaydet'
ClientHeight = 485
PixelsPerInch = 96
TextHeight = 13
inherited Panel1: TPanel
inherited JvDBGrid1: TJvDBGrid
Top = 200
Width = 769
end
end
end
Ne iştir anlamadım?
Garip doğrusu pek anlam veremedim....
Bir şekilde verdiğiniz yüksekliği dfm e kaydetmiyorsa ondan sonra bu olanlar normal tabi... Ama acaba neden kaydetmiyor? Ve de başka neler ikaydetmiyor? frmBase ve FrmDatabase in ozelliklerini de karşılaştırın derim acaba FrmDatabase deki bir özellikten olabilir mi?
Bir de kontrollu deney yapmak icin tamamen sıfır yeni bir projede basit olarak bu iki ata formu ve bunlardan türetilmis yeni bir formu tekrar yapmayi deneyebilirsiniz... Belki proje ayarlarından veya oluaşan bir problemden kaynaklanan bir durumdur...
Bir şekilde verdiğiniz yüksekliği dfm e kaydetmiyorsa ondan sonra bu olanlar normal tabi... Ama acaba neden kaydetmiyor? Ve de başka neler ikaydetmiyor? frmBase ve FrmDatabase in ozelliklerini de karşılaştırın derim acaba FrmDatabase deki bir özellikten olabilir mi?
Bir de kontrollu deney yapmak icin tamamen sıfır yeni bir projede basit olarak bu iki ata formu ve bunlardan türetilmis yeni bir formu tekrar yapmayi deneyebilirsiniz... Belki proje ayarlarından veya oluaşan bir problemden kaynaklanan bir durumdur...
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

Abi dediklerinizi uygulayacağım ancak garip bir durum.Şimdi formun height ve width özelliğini dfm ye yazmıyor.Ata sınıftan alıyor desem hem default bırakmıyorum hemde bu değerlerin ata sınıflada alakası yok.Nem dfm ye width ve height yazıyorum.Kaydediyorum.Bellekteki ile diskteki farklı değiştireyimmi diye soruyor delphi.(Ben not defteri ile yazıp kaydettikten sıonra dfmyi.)Evet ve Hayır cevaplarında da fark yok.Ben projeyi kaydettğim an da dfm deki width ve height özelliklerini siliyor.
Gökmen Hocam demişki:
Hakan Hocam demişki:
Coderlord Hocam demişki:
Sanırım tüm projeye yeniden başlasam sorun çözülebilir ama bunu burada çzömeliyim.Çünkü tam projenin ortasında en tefferruatlı bölümünde aynısı çıkarsa ne yaparım.
tekrar ilgilendiğiniz için teşekkür ederim.
Gökmen Bey:MaxHeight değeri sıfır.gkimirti yazdı:Constraints de MaxHeight ata sınıfda 517 olabilir
Hakan Hocam demişki:
Kontrol ettim ancak client height değerleri ile de alakası yok.Yani hiçbirinde bu 517 değeri yok.dfm'de formun Height özelliğini yazması gerekmiyor. ClientHeight'i yazıyor ya zaten. Tüm formların ClientHeight değerlerini de bir kontrol etsenize.
Coderlord Hocam demişki:
Hocam ne demek istediğiniz anlayamadım.Eğer formu türetirken diyorsanız zaten inherit seçeneği aktif oluyor yani diğerlerini kullanma şansım yok.Repository'ye atıyorsun sanırım.
Alıntı:
"Copy" the item.
"Inherit" from the item.
"Use" the item directly.
şeklinde Repository kullanımları mevcuttur. Bu üç seçenekten birinin işini göreceği kanaatindeyim
Sanırım tüm projeye yeniden başlasam sorun çözülebilir ama bunu burada çzömeliyim.Çünkü tam projenin ortasında en tefferruatlı bölümünde aynısı çıkarsa ne yaparım.
tekrar ilgilendiğiniz için teşekkür ederim.
Merhaba,
inherit alıyorsan sorun olmadan boyut değiştirebilmen lazım hocam. Ben formlarımı bu şekilde kullanıyorum ve hiçbir sıkıntı olmadan boyut değiştirebiliyorum. Bugüne kadar başıma gelen sıkınıtlardan edindiğim kadarıyla :
- kodda bir ayarlama var mı bir bakın. Mesela inherit formlardan birinden width := xx gibi bir atama var mı?
- MDI form kullanıyorsanız, Position poDesigned ise kafasına göre boyutlandırma yapıyor. Position'u poDefaultPosOnly yapın.
Kolay gelsin.
inherit alıyorsan sorun olmadan boyut değiştirebilmen lazım hocam. Ben formlarımı bu şekilde kullanıyorum ve hiçbir sıkıntı olmadan boyut değiştirebiliyorum. Bugüne kadar başıma gelen sıkınıtlardan edindiğim kadarıyla :
- kodda bir ayarlama var mı bir bakın. Mesela inherit formlardan birinden width := xx gibi bir atama var mı?
- MDI form kullanıyorsanız, Position poDesigned ise kafasına göre boyutlandırma yapıyor. Position'u poDefaultPosOnly yapın.
Kolay gelsin.
Hocam şöyle izah edeyim.
Önce TFormdan bir FrmBase adında bir formum var.MDI Child (ayrıca normaldede denedim.) Position'u poDefaultPosOnly
Bundan Türettiğim FrmDatabase var.Bunun boyutlarında sorun çıkmıyor.
FrmDatabaseden türettiğim asıl kullanacağım form FrmHastaKaydet te sorun çıkıyor.
Ata sınıflarda kod ile boyutu ayarlamadım.Yani böyle bir kod yok.FrmHastaKaydetin boyutunuda ayrıca runtimede kod yazsam yada düzeltip derlesem sorun yok ta sadece projeyi kapa aç kafasına göre açılıyo.Sadece de height özelliğinde sorun var.Gidip 517 de açılıyor.Mesela ben 517 den küçük bir sayı versem sorun olmuyor.Yani daha küçük yükseklikte kaydetsem kapatıp açsam tamam sorun yok.Ne varsa 517 den fazla almıyor.Yuksarda yazılan diğer öneriler de baktım.Mesela ata sınıflardan birinde sınırlama falan yok.ne dfm dosyalarımda nede pas dosyalarımda 517 sayısı bile yok.Propertieslerde yok.Buna nereden takılıyor onu anlayamadım.Remove edip yeniden türettim FrmHasta Kaydeti ama gene aynı.Ama dediğim gibi hepsini yeniden yapsam çözülebilir ama bu sorun gene çıkabilir.
Ayrıca formların tüm özelliklerini denedim.Mesela bssingle,bssizeable v.s.
herkeste sorun çıkmadığına göre bir yerde hata yapıyoruz ama nerede?

Önce TFormdan bir FrmBase adında bir formum var.MDI Child (ayrıca normaldede denedim.) Position'u poDefaultPosOnly
Bundan Türettiğim FrmDatabase var.Bunun boyutlarında sorun çıkmıyor.
FrmDatabaseden türettiğim asıl kullanacağım form FrmHastaKaydet te sorun çıkıyor.
Ata sınıflarda kod ile boyutu ayarlamadım.Yani böyle bir kod yok.FrmHastaKaydetin boyutunuda ayrıca runtimede kod yazsam yada düzeltip derlesem sorun yok ta sadece projeyi kapa aç kafasına göre açılıyo.Sadece de height özelliğinde sorun var.Gidip 517 de açılıyor.Mesela ben 517 den küçük bir sayı versem sorun olmuyor.Yani daha küçük yükseklikte kaydetsem kapatıp açsam tamam sorun yok.Ne varsa 517 den fazla almıyor.Yuksarda yazılan diğer öneriler de baktım.Mesela ata sınıflardan birinde sınırlama falan yok.ne dfm dosyalarımda nede pas dosyalarımda 517 sayısı bile yok.Propertieslerde yok.Buna nereden takılıyor onu anlayamadım.Remove edip yeniden türettim FrmHasta Kaydeti ama gene aynı.Ama dediğim gibi hepsini yeniden yapsam çözülebilir ama bu sorun gene çıkabilir.
Ayrıca formların tüm özelliklerini denedim.Mesela bssingle,bssizeable v.s.
herkeste sorun çıkmadığına göre bir yerde hata yapıyoruz ama nerede?



- Master_Yoda
- Üye
- Mesajlar: 35
- Kayıt: 13 Ara 2005 12:57
Evet denedim.Zaten sorunun runtimede değil design timede.Mesela dediğiniz gibi ben dfm ye manuel 600 yazıyorum.(Notepad ile) sonra delphi idesi içinde save edince bu benim eklediğim bölümü siliyor.Yani heigt=600 ü siliyor.İlk base formum mdichild idi.Onuda normal yazptım Bordericons parametreleri ile oynadım vs.denemeler yaptım çok enteresan.Zaten runtimede olsa gene anlayabilicemde tasarım anında olması enteresan.