Main Form haricinde diğer formlarda ekrana çıkıyor

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
kazimates
Üye
Mesajlar: 332
Kayıt: 01 Tem 2005 12:40
Konum: Kıbrıs
İletişim:

Main Form haricinde diğer formlarda ekrana çıkıyor

Mesaj gönderen kazimates »

Projenin içerisinde 20 adet form var ve run ettiğimiz zaman mainformdan başka ikinci bir dorm daha karşımızda gözüküyor ana formun haricinde diğerinin çıkmaması lazım ne yapılabilir?
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Diğer formların Object Inspector / properties den visible larını false yapmalısın. Doğrusu kullandığın ana form ve datamodule dışındaki formları Project / Options (Shift+Ctrl+F11) den available forms kısmına taşıman ve gerektiği zaman

Kod: Tümünü seç

  frm_Form2 := Tfrm_Form2.Create(Self);
  frm_Form2..ShowModal;
  frm_Form2.Free;
şeklinde kullanman. Çok fazla form varsa hepsini başta açıp belleği doldurmak mantıklı değil :idea:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
bobasturk
Kıdemli Üye
Mesajlar: 1387
Kayıt: 20 May 2004 08:39
Konum: Düzce

Mesaj gönderen bobasturk »

Merhabalar,

Recep ustam bu verdiğin örneği ve tavsiyeyi ben formlarımda kullanıyorum.

Kod: Tümünü seç


if not assigned(form1) then
begin
  form1:=tform1.create(self);
  form1.show;
end
else
  form1.bringtofront;

formun close ve destroy larınada gerekli kodları yazıyorum. fakat siz kodunuzda

........

form2.free;

demişsiniz burayı anlamadım. free olarak niçin kullanıyoruz formu oluşturduktan sonra. okuyunca kafama takıldı. basit bi soru ama vakti olup açıklayan olursa öğrenme açısından iyi olacak.

teşekkürler kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Resim
kazimates
Üye
Mesajlar: 332
Kayıt: 01 Tem 2005 12:40
Konum: Kıbrıs
İletişim:

ana form haricindekilerin çalışmada karşımıza çıkması

Mesaj gönderen kazimates »

abi malesef ana menu dısındakileri available forms a attığım zaman program hata veriyor

Error
Project Project1.exe raised exception class EAccessViolation with message 'Access violation at address 40053C4A in module 'Vcl50.bpl'.Read address 000002CC'.Process stopped. Use Step or Run to continue.
View CPU Window

ve yukarıdaki hata mesajı karşımıza geliyor. Ne yapılabilir veya bunun yorumu sizce nedir?
Kullanıcı avatarı
bobasturk
Kıdemli Üye
Mesajlar: 1387
Kayıt: 20 May 2004 08:39
Konum: Düzce

Mesaj gönderen bobasturk »

merhaba,

ben yukarıdaki kodu formu açacak butonda kullanıyorum buna ilaveten oluşturulan formun onclose olayına

action:=cafree;

ondestroy olayına

form1:=nil;

ekliyorum. bu konuyuda bu formdan öğrenmiştim ve hiç bir sorun yaşamıyorum.

kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Resim
cemarik
Üye
Mesajlar: 45
Kayıt: 30 Ağu 2003 11:05
Konum: İzmir

Mesaj gönderen cemarik »

Project / Options da Auto-Create Forms dan Available Forms a taşıdığın formlardan birisini create etmeden ulaşmaya çalışıyorsan hatayı ondan yiyorsundur büyük ihtimalle
Cevapla