form değişkenine oluşan form ismini atamak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
akuyumcu63
Üye
Mesajlar: 386
Kayıt: 02 Tem 2007 09:43

form değişkenine oluşan form ismini atamak

Mesaj gönderen akuyumcu63 »

merhaba;
ana form üzerinden bir formu birden fazla oluşturduğumuz zaman form adı Form1 ise ikinci oluşan Form1_1 üçüncü oluşan Form1_2 ... şeklinde devam ediyor.

Kod: Tümünü seç

var
  Frm :TForm2;
begin
  Frm:=TForm2.create(Self);
  Frm.Show;
end;
formu yukarıdaki şekiyde oluşturuyorum. Frm değişkeni hafızada oluşan son form ismini alıyor. oluşturduğum 2-3 formdan hagisini seçtiysem o formun Frm değişkenine aktarılmasını istiyorum. hafızada oluşan formun ismini bir edit kutusuna aktarıyorum. editteki form adını Frm değişkenine nasıl aktrabilirim.
İsteyen, yapabildiğinden daha fazlasını yapar.
ertank
Kıdemli Üye
Mesajlar: 1650
Kayıt: 12 Eyl 2015 12:45

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen ertank »

Merhaba,

Eğer aynı formun birden fazla kez oluşturulması istenilen çalışma şekli ise;
Prosedür çapında değişken tanımlamak yerine form veya uygulama bazında array değişken tanımlayın. Her yeni form göstermede array büyüklüğünü bir arttırın. Indeks bilgisi yardımı ile hangi kopyayı kullanmak istiyorsanız ekranda gösterin.

Eğer tek bir defa Create edilip sürekli kullanılmak isteniliyor ise; program ilk çalıştığında form veya uygulama çapında tanımlanmış değişkene nil değerini atayın. Kullanmanız gerektiği zaman nil ise Create edin, değil ise direk show şeklinde kullanın.

Yapmak istediğiniz farklı birşey ise sorunuzu biraz daha farklı şekilde sorabilir misiniz?
archim
Üye
Mesajlar: 2
Kayıt: 10 Eki 2017 12:30

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen archim »

yanlış anlamadıysam oluşturduğunuz formun ismini siz belirlemek istiyorsunuz. Formu oluşturduktan sonra yani Create den sonra Frm.name:= 'Formismi' şeklinde istediğiniz ismi atayabilirsiniz, yada atanmış ismi okuyabilirsiniz.
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen greenegitim »

delphi.about.com/od/beginners/fl/Create ... String.htm
buradaki gibi birşeymi acaba? yada buradaki gibimi?
viewtopic.php?t=34849
Mücadele güzelleştirir!
akuyumcu63
Üye
Mesajlar: 386
Kayıt: 02 Tem 2007 09:43

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen akuyumcu63 »

Eğer aynı formun birden fazla kez oluşturulması istenilen çalışma şekli ise;
Prosedür çapında değişken tanımlamak yerine form veya uygulama bazında array değişken tanımlayın. Her yeni form göstermede array büyüklüğünü bir arttırın. Indeks bilgisi yardımı ile hangi kopyayı kullanmak istiyorsanız ekranda gösterin.
bu izahınızı çok kavrayamadım. örneklendirebilirseniz menun olurum.

Ana Form üzerinden aynı formdan varsayalım 3 adet form oluşturdum. Formun adı FORM2 ise oluşan bu üç form hafızada FORM2, FORM2_1, FORM2_2 ... isimlerinde oluşuyor. oluşan bu formların üzerindeki formdan showmodal bir form açıyorum. modal formdan da bu formlara veri aktarma işlemi yaparken son oluşturduğum form hangisi ise veri aktarma işlemini o forma yapılıyor. bir önceki forma yada ilk forma tıklayıp modal formu tekrar açıp veriyi aktarmaya çalıştığım zaman son oluşan forma veriye aktarmaya devam ediyor. Hafızada oluşan form adını değiştirmeye çalıştığım zamanda şu hata mesajını veriyor.
Acomponent named form2 alreay exists

Kod: Tümünü seç

Form2.Edit1.text := Edit5.text;
veri aktarırken bu kodu kullanıyorum.
İsteyen, yapabildiğinden daha fazlasını yapar.
akuyumcu63
Üye
Mesajlar: 386
Kayıt: 02 Tem 2007 09:43

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen akuyumcu63 »

hocalarımız bu işe bir el atsaydı ne iyi olurdu.
İsteyen, yapabildiğinden daha fazlasını yapar.
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2356
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen freeman35 »

Pointer konusunu araştır ve kavra. Bu değişken ve pascal hatta tüm programcılık konusunun en temel taşlarındandır.
xxClass.Name sadece string bir property dir. name olmasa tag olsa ne değişir ?
"var Frm :TForm2;" bu bir tanımlamadır, "frm" nin tipi nedir burda ? TForm2 mi? yoksa Bir pointer mı? yani bir integer sayı, yani memory bloğunun başlangıcı, yada en kolay akılda kalacak şekilde, frm, TForm2 nin kulağıdır, gerektiğinde kulağından tutup getirebilmek için :)
Bu bilgi ışındada aynı kulağa sahip iki çocuk olamaz :D
Tlist kullan, yada sınır belirli ise bir array tanımla. Ama TList bunun gibi işler için oluşturulmuş bir Class tır.
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
ertank
Kıdemli Üye
Mesajlar: 1650
Kayıt: 12 Eyl 2015 12:45

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen ertank »

Ekteki Delphi 10.2 ile çalışan örneği inceleyebilirsiniz.
Dosya ekleri
formkopyala.rar
(59.9 KiB) 101 kere indirildi
akuyumcu63
Üye
Mesajlar: 386
Kayıt: 02 Tem 2007 09:43

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen akuyumcu63 »

Ekteki Delphi 10.2 ile çalışan örneği inceleyebilirsiniz.
dosya bozulmuş. indirdikten sonra açılmıyor. tekrar gönderebilirmisiniz.
İsteyen, yapabildiğinden daha fazlasını yapar.
akuyumcu63
Üye
Mesajlar: 386
Kayıt: 02 Tem 2007 09:43

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen akuyumcu63 »

eğer forma göndermek mümkün olmuyorsa mail adresime de gönderebilirsiniz.
akuyumcu63@hotmail.com
İsteyen, yapabildiğinden daha fazlasını yapar.
ertank
Kıdemli Üye
Mesajlar: 1650
Kayıt: 12 Eyl 2015 12:45

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen ertank »

akuyumcu63 yazdı: 21 Eki 2017 02:50 dosya bozulmuş. indirdikten sonra açılmıyor. tekrar gönderebilirmisiniz.
WinRAR 5.0 veya daha yeni bir sürüm ile açılacaktır.
akuyumcu63
Üye
Mesajlar: 386
Kayıt: 02 Tem 2007 09:43

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen akuyumcu63 »

merhaba;

öncelikle hazırlamış olduğunuz örnek çalışma için çok teşekkür ederim.
gönderdiğiniz örneği inceledim. örnekte hedef formdan birçok tane oluşturup kaynak forma veri aktarabiliyoruz. benim yapmaya çalıştığım bunun biraz tersi gibi;
olayı örneklendirecek olursam. Anaform, FisForm, MalzemeListeForm üç adet formum var AnaForm dan FisForm oluşturuyorum. 1,2, 3 yada 4 adet
Oluşturuyorum. oluşan fişformlardan MalzemeListeFormunu Showmodal olarak açıyorum. fisformlardan hangisi üzerinden MalzemeListeFormunu açtıysam seçtiğim kaydın o fisForma aktarım işlemini yapmaya çalışıyorum.
çalışmamda hep son fişforma veri aktarımı gerçeklişiyor. daha önceki oluşan formlar fare ile tıklanarak aktive edilip MalzemeListeform açıldığı halde en son açılan forma aktarım yapılıyor. halbuki ben modal olarak hangi fişformdan malzeme listesini açtıysam ona aktarım yapmasını istiyorum.
İsteyen, yapabildiğinden daha fazlasını yapar.
ertank
Kıdemli Üye
Mesajlar: 1650
Kayıt: 12 Eyl 2015 12:45

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen ertank »

Merhaba,

Soru sorar iken mümkün mertebe detay bilgi vermenizde fayda var. İlk sorunuz ile şu an sorduğunuz soru farklı sorular olarak anlaşılıyor.

Ekte bir önceki örnek uygulamanın güncellenmiş halini bulabilirsiniz.
Dosya ekleri
formkopyala2.rar
(61.17 KiB) 107 kere indirildi
akuyumcu63
Üye
Mesajlar: 386
Kayıt: 02 Tem 2007 09:43

Re: form değişkenine oluşan form ismini atamak

Mesaj gönderen akuyumcu63 »

merhaba;
değerli hocam hazırlamış olduğunuz iki örnek için çok teşekkür ederim. çok faydası oldu. çok dua aldınız. gıpta ettim.
delphide formlarla ilgili olarak çok faydalı bir örnek.
İsteyen, yapabildiğinden daha fazlasını yapar.
Cevapla