aşagıdaki kod procedure içinde çalışmıyor ??

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

aşagıdaki kod procedure içinde çalışmıyor ??

Mesaj gönderen forumsad »

Kod: Tümünü seç

TLabel(form_mk1oyunekran.FindComponent('Basliklabel'+IntToStr(i))).Top:=0;
arkadaşlar bu kod form içinde çalışıyor ama ayrı bir ünit içindeki procedure içinde çalışmıyor

nerde hata yapıyorum acaba Tlabel nesnesini unit'e tanıtmakmı gerekiyor acaba nasıl?

saygılarımla
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: aşagıdaki kod procedure içinde çalışmıyor ??

Mesaj gönderen mkysoft »

çalışmıyor derken? biraz daha detay verin. Hata mesajı veriyorsa paylaşın.
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Re: aşagıdaki kod procedure içinde çalışmıyor ??

Mesaj gönderen ikutluay »

bir form içinde tanımlanan alanlar değikenler objeler vs herşey sadece o formun çinde tanımlı methodlarca erişibilebilir.

harici unitte şunu yap örneğin

topfunc (var alabel:tlabel)
begin
alabel.top :=0;
end,;

kullandığın yerdede o kod yerine topfunc (label adı)...

kod sadece mantığı göstermek içindir. harici unit yazımında mantık budur.
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
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Re: aşagıdaki kod procedure içinde çalışmıyor ??

Mesaj gönderen ikutluay »

ek olarak belirteyim... değişkenler ve nesneler konusunda "uses ile bağlanmadığı sürece"....
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
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

Re: aşagıdaki kod procedure içinde çalışmıyor ??

Mesaj gönderen forumsad »

Undeclared identifier 'TLabel' hatası veriyor


unit frame1konum;

interface



procedure BirOyuncuIcinKonumla(bOrani,genislik,eWidth,eHeight: integer);
implementation

uses mk1oyunekran, Math, Controls;

procedure BirOyuncuIcinKonumla(bOrani,genislik,eWidth,eHeight: integer);
var
i,ii:integer;
begin
for i:=1 to 12 do //panel başlık top ve height ayarları
begin
TLabel(form_mk1oyunekran.FindComponent('Basliklabel'+IntToStr(i))).Top:=0;
//TLabel(FindComponent('Basliklabel'+IntToStr(i))).Height:=form_mk1oyunekran.Panel_baslik.Height;
end;
end;

end.
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

Re: aşagıdaki kod procedure içinde çalışmıyor ??

Mesaj gönderen forumsad »

Kod: Tümünü seç

procedure  deneme;
var
i:integer;
begin

for i:=1 to 4 do //panel başlık top ve height ayarları
begin
//TLabel(Form1.FindComponent('Label'+IntToStr(i))).Top:=0;
Form1.Label1.Caption:='deneme';

end;
end;
aslında tek tek ulaşıyorum ama findcompenant ile hepsine işlem yapmak istediğimde olmuyor
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: aşagıdaki kod procedure içinde çalışmıyor ??

Mesaj gönderen mkysoft »

kodunuzu parça parça yapıştırmışsınız galiba. eğer bu halde ise, uses kısmı eksik. Tlabel farklı unit içinde.
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

Re: aşagıdaki kod procedure içinde çalışmıyor ??

Mesaj gönderen forumsad »

interface


uses
SysUtils,StdCtrls;


ekledim düzeldi teşekkürler arkadaşlar
Cevapla