Modal form ardında kalan inputbox.

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
oklawa
Üye
Mesajlar: 68
Kayıt: 01 Oca 2008 02:53

Modal form ardında kalan inputbox.

Mesaj gönderen oklawa »

İyi günler..

Veri girişi için ana formun önüne bir formu modal çıkarıyorum, veri giriş formu iki DBEdit ve beş lookupcombobox dan oluşuyor.
Bu ekranda eğer eksik bir veri varsa kullanıcı bir butona basacak inputbox görünecek ve string veri girilip kaydedilecek.
En azından istediğim bu.

Fakat inputbox modal formun arkasında kalıyor.

http://www.experts-exchange.com/Softwar ... 58935.html da da aynı sorun aktarılmış ama ücretli üyelik gerekiyor.

Inputbox'ı öne nasıl getirebilirim?
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: Modal form ardında kalan inputbox.

Mesaj gönderen mrmarman »

Merhaba...

- Öncelikli önerim (bu işin en sağlıklı ve kolayı), InputBox yerine buna benzer kendinin tasarladığı hatta dilersen aynı inputbox'a benzeyen yeni bir formu kendin oluştur ve onu StayOnTop halde kullan.

- fantazi yapalım dersen basit bir timer'a ihtiyacın olacak... Sen fsStayOnTop olan bir formun önüne bir inputbox oluşturusan, bunu FindWindow ile handle'ini bulup, güç kullanarak öne getirmen gerekir ki iş görür ama rantabiletisi tartışılır... :lol: Şöyle örnekleyim... :idea:

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
Var
  Degisken : string;
begin
  Form1.FormStyle := fsStayOnTop;
  Degisken := '';
  // bu inputbox fsStayOnTop olan formun arkasında kalmaya mahkum..
  InputBox('test', 'Test', degisken );
end;

Kod: Tümünü seç

procedure TForm1.Timer1Timer(Sender: TObject);
var
  Pencere : tHandle;
begin
  // bu Timer ise saniyede 1 kere bakıp arkadaki InputBox'u öne alır
  Pencere := FindWindow( 'TForm', 'test' );
  if Pencere <> 0 then begin
    SetWindowPos(pencere, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE);
  end;
end;
Resim
Resim ....Resim
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Re: Modal form ardında kalan inputbox.

Mesaj gönderen ikutluay »

oklawa yazdı:İyi günler..

Veri girişi için ana formun önüne bir formu modal çıkarıyorum, veri giriş formu iki DBEdit ve beş lookupcombobox dan oluşuyor.
Bu ekranda eğer eksik bir veri varsa kullanıcı bir butona basacak inputbox görünecek ve string veri girilip kaydedilecek.
En azından istediğim bu.

Fakat inputbox modal formun arkasında kalıyor.

http://www.experts-exchange.com/Softwar ... 58935.html da da aynı sorun aktarılmış ama ücretli üyelik gerekiyor.

Inputbox'ı öne nasıl getirebilirim?
Mrmarman ustaya katılıyorum. inputbox u boş verip en sağlamı, kendi özel formunu göstermen. hatta daha ileri gidip bu formu dinamik olarak oluşturup yok ederek özellikleriylede (stayontop) oynayabilir ve işini görebilirsin. Inputbox un işi kolaylaştırdığı söyelenebilir ama her bilgi için ayrı bir kutu göstermek programın kalitesinden birşeyler götürür doğrusu.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
oklawa
Üye
Mesajlar: 68
Kayıt: 01 Oca 2008 02:53

Re: Modal form ardında kalan inputbox.

Mesaj gönderen oklawa »

Teşekkürler.
Zaten diğer veri girişleri kendi hazırladığım formlarla yapılıyordu.
Tek string tipi verinin girişi için form hazırlamaktan kaçınmış inputbox'ı kullanmıştım.
Cevapla