webrettin, bu arada sana tavsiyem neden ciddi bir şeyler denemiyorsun? Ama önce sen biraz daha kurcala...
Delphi 7 Köşesi...
Cevaplar
Açıkçası bu işyerimde bulunan türbin kontrollerin similatörü için; nasıl başedebilirim bilmiyorum. Böyle ufaktan ufaktan başlıyayım dedim. Size sorduğum soruda türbinin hızlanırken 3000 d/dk'ya gelme simülesi için bu ve buna benzer birçok faktörlerle hem delphi hemde işyerindeki tecrübem gelişir diye düşündüm. Siz similasyonu 1 veya iki günde yazacağa benziyorsunuz :biggrin:evowinds dedi: ↑webrettin, bu arada sana tavsiyem neden ciddi bir şeyler denemiyorsun? Ama önce sen biraz daha kurcala...
konu programlama bölümüne taşınmıştır
delphiciler toplanmış haberimiz yok :D arkadaşlar delphi de yardıma ihtiyacı olan olursa ben de burdayım, konuyu aboneliklerime ekliyorum, soru soran olursa memnuniyetle cevaplarız :)
Karşılaştığım problem aslında basit ama kod çalışmıyor, öğrenmek için okuduğu kitaptaki kod aynen şöyle;
Ama çalıştırdığmda karşılaştığım sorun ise;

Sizce bildirilmemiş tanımlayıcı dediği sorunun kaynağı ne olabilir?
procedure TForm1.Button4Click(Sender: TObject);
var
sonuc:Integer;
begin
sonuc:=RandomRange(10,100);//10-99 arasında rastgele tamsayı üret
Form1.Caption:=FloatToStr(sonuc);
end;Ama çalıştırdığmda karşılaştığım sorun ise;

Sizce bildirilmemiş tanımlayıcı dediği sorunun kaynağı ne olabilir?
arkadaşım kodunda hata yok sadece kodu yazdıgın unit sayfasının en yukarısında Uses kısmı var oraya Math kelimesini eklemen gerekiyor...


bir de sonuc değişkenini int tanımlayıp floattostr kullanmışsın, inttostr olmalı :)webrettin dedi: ↑Karşılaştığım problem aslında basit ama kod çalışmıyor, öğrenmek için okuduğu kitaptaki kod aynen şöyle;procedure TForm1.Button4Click(Sender: TObject); var sonuc:Integer; begin sonuc:=RandomRange(10,100);//10-99 arasında rastgele tamsayı üret Form1.Caption:=FloatToStr(sonuc); end;
Ama çalıştırdığmda karşılaştığım sorun ise;
Sizce bildirilmemiş tanımlayıcı dediği sorunun kaynağı ne olabilir?
AdReNaLiNe ve Champion78 cevaplarınız için teşekkürler bahsettiğiniz şekilde sorun çözüldü, ellerinize sağlık.
Bi sorum daha olacaktı updown hakkında. updown ile tam sayı olarak değeri değiştirebiliyoruz ancak ondalıklı olarak mesala 0,1 er 0,1 er gibi artıp azalan değeri kabul etmedi ne yapabilirim.
UpDown1.Increment:=0,1;
Programlama dillerinde virgul, parametreleri birbirinden ayirmak icin; nokta, kayar nokta sayilari yazmak icin kullanilir. (class'lari karistirmayin simdi)
tolgacakiroglu dedi: ↑Programlama dillerinde virgul, parametreleri birbirinden ayirmak icin; nokta, kayar nokta sayilari yazmak icin kullanilir. (class'lari karistirmayin simdi)

Nokta kullan diyorsan nokta da aynı sonucu veriyor yinede bilgilendirme için teşekkürler.
up-down ondalıklı sayıları desteklemiyor galiba, kodunu kendin yazman gerekiyor. çok uğraştıracağını sanmıyorum. istersen sen bir dene olmazsa ben yazabilirim..
Pekala olmadığı takdirde size döneyim, yardımınız için teşekkürler.Champion78 dedi: ↑up-down ondalıklı sayıları desteklemiyor galiba, kodunu kendin yazman gerekiyor. çok uğraştıracağını sanmıyorum. istersen sen bir dene olmazsa ben yazabilirim..
Projemi çalıştırmak istediğimde şu şekilde bir uyarı verdi.

onayladığımda ise;

Şeklinde pencere çıkıyor daha önce bu durumla karşılaşmış olan var mı?
Bilgilendirirseniz sevinirim.

onayladığımda ise;

Şeklinde pencere çıkıyor daha önce bu durumla karşılaşmış olan var mı?
Bilgilendirirseniz sevinirim.
galiba form1 in create olayında form2 içerisindeki bir şeye erişmeye çalışmışsın ve henüz form2 oluşturulmadığı için hata vermiş. form1 in create içerisinde form2 ile alakalı yazdığın kodu, form1 in show kısmına taşırsan sorunun düzelecektir ;)
Aslında form 2'ye ait kod çağırmadım ama uzun zamandır baktığım çalışma belki yazmışımdır iyice inceleyeyim teşekkürler.Champion78 dedi: ↑galiba form1 in create olayında form2 içerisindeki bir şeye erişmeye çalışmışsın ve henüz form2 oluşturulmadığı için hata vermiş. form1 in create içerisinde form2 ile alakalı yazdığın kodu, form1 in show kısmına taşırsan sorunun düzelecektir ;)
Belki basit uygulamalarla uğraşıyorum ama öğrenmem gerekli.
Karşılaştığım sorun;

şekildeki formda görüleceği gibi 1'er edit,updown,label nesneleri bulunmaktadır.
Editte girilen tam sayı değerlerini label nesnesine ondalıklı ama ondalık kısmının sadece iki basamağı görüntülenebilir şekilde sınırlı olaması gerekli. Bunu da bildiğiniz gibi formatfloat ile yapılıyor; örneğin edit nesnesine girilen değerin 0.151 gibi çapanını ondalıklı kısmı iki basamak gösterecek şekilde nasıl yapabilirim. Defalarca denedim.
Sonunda sıklıkla yaptığım gibi :) bilen birilerine sorayım dedim. yardım lütfen.
Karşılaştığım sorun;

şekildeki formda görüleceği gibi 1'er edit,updown,label nesneleri bulunmaktadır.
Editte girilen tam sayı değerlerini label nesnesine ondalıklı ama ondalık kısmının sadece iki basamağı görüntülenebilir şekilde sınırlı olaması gerekli. Bunu da bildiğiniz gibi formatfloat ile yapılıyor; örneğin edit nesnesine girilen değerin 0.151 gibi çapanını ondalıklı kısmı iki basamak gösterecek şekilde nasıl yapabilirim. Defalarca denedim.
Sonunda sıklıkla yaptığım gibi :) bilen birilerine sorayım dedim. yardım lütfen.
şu kod işini görür ;)
bu uzun kısalt dersen, değişkensiz tek satır hali de bu :)procedure TForm1.Edit1Change(Sender: TObject);
var
s1:integer;
s2:real;
begin
s1:=strtoint(edit1.Text);
s2:=s1*0.15;
label1.Caption:=formatfloat('0.00',s2);
end;
hatta bu yaklaşımınla önceki sorununu da halledebilirsin, belki de yapmak istediğin zaten buydu :) label1 yerine edit2 koyup, edit1i gizlediğin zaman problemin çözülmüş olacak :)procedure TForm1.Edit1Change(Sender: TObject);
begin
label1.Caption:=formatfloat('0.00',strtoint(edit1.Text)*0.15);
end;
Champion78 dedi: ↑şu kod işini görür ;)
bu uzun kısalt dersen, değişkensiz tek satır hali de bu :)
hatta bu yaklaşımınla önceki sorununu da halledebilirsin, belki de yapmak istediğin zaten buydu :) label1 yerine edit2 koyup, edit1i gizlediğin zaman problemin çözülmüş olacak :)
Ellerin dert görmesin arkadaşım. Konuyu küçümsemeyip cevapladığın için.Champion78 dedi: ↑şu kod işini görür ;)
bu uzun kısalt dersen, değişkensiz tek satır hali de bu :)
hatta bu yaklaşımınla önceki sorununu da halledebilirsin, belki de yapmak istediğin zaten buydu :) label1 yerine edit2 koyup, edit1i gizlediğin zaman problemin çözülmüş olacak :)
Size birkaç gündür bonus vererek sanalda olsa teşekkür edeyim diyorum ama başka konularda ki bonus butonu bile aşağıdaki uyarıyı veriyor. Çok teşekkür ederim.

eyvallah teşekkür ederim :) delphi aslında yavaş yavaş değerini kaybetmekte olan bir dil. ancak ben ide ve derleyicisini çok beğeniyorum, adeta çatır çatır kod yazabiliyorum delphide :) ve delphi ile uğraşanlara yardım etmek de hobi gibi bi şey oldu bende :D o yüzden problem olursa yine buralardayım, seve seve yardımcı olurum. hatta aklında değişik fikirler varsa bana da ver :D bi şeyler yazmak istiyorum ama aklıma yazabileceğim bir program gelmiyor malesef. en son ve en büyük programım transkript var, dolaşıyor piyasada, arada bir onu güncelleyip yeni özellikler ekliyordum, orda da tıkanıklık oluştu malesef :D programı incelemek istersen http://www.nano-soft.org/cgi-bin/download.pl?file=transkript adresinden indirebilirsin ve programda şunu nasıl yaptın dediğin bir yer olursa da sorabilirsin cevaplarım elimden geldiğince ve hatırladığımca :D kolay gelsin, iyi günler..webrettin dedi: ↑Ellerin dert görmesin arkadaşım. Konuyu küçümsemeyip cevapladığın için.
Size birkaç gündür bonus vererek sanalda olsa teşekkür edeyim diyorum ama başka konularda ki bonus butonu bile aşağıdaki uyarıyı veriyor. Çok teşekkür ederim.
Programı indirdim, inceleyip dediğiniz gibi anlamadığım yerleri size sorayım tekrar teşekkür ederim sağolun.Champion78 dedi: ↑eyvallah teşekkür ederim :) delphi aslında yavaş yavaş değerini kaybetmekte olan bir dil. ancak ben ide ve derleyicisini çok beğeniyorum, adeta çatır çatır kod yazabiliyorum delphide :) ve delphi ile uğraşanlara yardım etmek de hobi gibi bi şey oldu bende :D o yüzden problem olursa yine buralardayım, seve seve yardımcı olurum. hatta aklında değişik fikirler varsa bana da ver :D bi şeyler yazmak istiyorum ama aklıma yazabileceğim bir program gelmiyor malesef. en son ve en büyük programım transkript var, dolaşıyor piyasada, arada bir onu güncelleyip yeni özellikler ekliyordum, orda da tıkanıklık oluştu malesef :D programı incelemek istersen http://www.nano-soft.org/cgi-bin/download.pl?file=transkript adresinden indirebilirsin ve programda şunu nasıl yaptın dediğin bir yer olursa da sorabilirsin cevaplarım elimden geldiğince ve hatırladığımca :D kolay gelsin, iyi günler..
Delphi 7 derleyicisinde hiçbir şekilde değişiklik yapmadığım halde aşağıdaki uyarıyı alıyorum. Windows güvenlik güncelleştirmesinden olabilir diye düşünerek en son güncellemeyi kaldırdım ama sonuç aynı, geri yüklemede olumlu sonuç vermedi. Hata ne olabilir.


Bu sorunu gidermek için Tools > Environment Options yolunu takip ederek Library sekmesinde yer alan path alanlarını düzeltmeniz gerekmektedir. Bu yollar default olarak
Library Path: $(DELPHI)\Lib
BPL output directory:$(DELPHI)\Bin
DCP output directory:$(DELPHI)\Imports
Browsing path:$(DELPHI)\Projects\Bpl
şeklindedir.
Eğer path kısmında bir sorun yok ise “C:\Program Files\Borland\Delphi7\Source\Rtl\Sys” klasörü içindeki “System.pas” dosyasını ve “C:\Program Files\Borland\Delphi7\Lib” içindeki “System.dcu” dosyasını kontrol ediniz…
Not : Alıntıdır.
Library Path: $(DELPHI)\Lib
BPL output directory:$(DELPHI)\Bin
DCP output directory:$(DELPHI)\Imports
Browsing path:$(DELPHI)\Projects\Bpl
şeklindedir.
Eğer path kısmında bir sorun yok ise “C:\Program Files\Borland\Delphi7\Source\Rtl\Sys” klasörü içindeki “System.pas” dosyasını ve “C:\Program Files\Borland\Delphi7\Lib” içindeki “System.dcu” dosyasını kontrol ediniz…
Not : Alıntıdır.
Bu ne güzel alıntıdır.Ellerinize sağlık; sorun bahsettiğniz ayarlamalarla çözüldü. :clap::clap::clap::clap:AdReNaLiNe dedi: ↑Bu sorunu gidermek için Tools > Environment Options yolunu takip ederek Library sekmesinde yer alan path alanlarını düzeltmeniz gerekmektedir. Bu yollar default olarakLibrary Path: $(DELPHI)\Lib
BPL output directory:$(DELPHI)\Bin
DCP output directory:$(DELPHI)\Imports
Browsing path:$(DELPHI)\Projects\Bpl
şeklindedir.
Eğer path kısmında bir sorun yok ise “C:\Program Files\Borland\Delphi7\Source\Rtl\Sys” klasörü içindeki “System.pas” dosyasını ve “C:\Program Files\Borland\Delphi7\Lib” içindeki “System.dcu” dosyasını kontrol ediniz…
Not : Alıntıdır.
Başka bonus vermeme izin vermedi.
Sorun nereden kaynaklanmış olabilir, bir tahmininiz olabilir mi? Tekrar yardımlarınız için teşekkür ederim.
arkadaşlar şimdi düşünüyordum öle aklıma geldi sorayım dedim....delphide mesela form üzerinde bir buttonu 360 derece dönderebilirmiyiz ? imkanı varsa bilen arkadaşlar yardımcı olsunlar eğer yapabilirsem güzel bir proje düşünüyorum :) cvp larınızı bekliyorum
Ne yapmak istediğini söylersen belki bir workaround bulabiliriz....
resımdeki gibi forumda 360 derece döndermek istiyorum resimi
resmin top-left koordinatlarıyla oynayabilirsin tabi; ancak resmi de döndürmek zor gibi duruyor :)
Evet, Resmin Top-Left konumlarıyla oynarsın. Belirli bir çap içerisinde-etrafında döndürebilirsin.
Ben bir an butonu orta noktasından, yani ağırlık merkezi etrafından döndürmek istediğini düşündüm.
Emin olmak için sordum. Timer nesnesi kullanırsan kendi kendine yuvarlak çizdirebilirsin. Şaka amaçlı
kullancağa benziyorsun ya hadi hayırlısı. İhtiyacın olursa yardımcı olurum. :)
Ben bir an butonu orta noktasından, yani ağırlık merkezi etrafından döndürmek istediğini düşündüm.
Emin olmak için sordum. Timer nesnesi kullanırsan kendi kendine yuvarlak çizdirebilirsin. Şaka amaçlı
kullancağa benziyorsun ya hadi hayırlısı. İhtiyacın olursa yardımcı olurum. :)
delphinin standart butonunu bir daire etrafinda hareket ettirebilirsin ama kendi ekseni etrafinda döndüremezsin. ille de kendi ekseni etrafinda döndürmek istiyorsan mümkün tabii ki, imkansiz bir sey yok delphi de :) ama bunun icin kendi button componentini yazman gerekiyor.