Tüm Platformlar için Hızlı Uygulama Geliştirme --->    Kitabımız...      Delphi

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
if and or sonucu hakkında
#1
İyi akşamlar.
Aşağıdaki kod da ARow 0 olduğu halde   begin and arası çalışıyor.
kodda neyi göremiyorum veya yanlış

procedure TFrm_Sevk_Yeni.Grd_SevkDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
var
saga_yasla: word;
begin
toplam_kapi.AsInteger := Grd_Sevk.RowCount-1;

            // stringgridde sağa yazılacak sutunlar
            if (ARow > 0) and (ACol = 0)  or (ACol = 1) then
              begin
               ShowMessage(inttostr(ARow));
               saga_yasla := settextalign(Grd_Sevk.Canvas.handle, ta_right);
               Grd_Sevk.Canvas.textrect(Rect, Rect.right - 2, Rect.Top + 2,Grd_Sevk.Cells[ACol, ARow]);
               settextalign(Grd_Sevk.Canvas.handle, saga_yasla);
              end ;

end;


Ek Dosyalar Resimler
   
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Cevapla
#2
if (( ARow > 0) and (ACol = 0)) or (ACol = 1) then
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla
#3
(12-04-2017, Saat: 17:53)yhackup Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Olif  (( ARow > 0) and (ACol = 0))   or (ACol = 1) then

if ((ARow > 0) and (ACol = 0))  or (ACol = 1) then
              begin
               ShowMessage(inttostr(ARow));
               saga_yasla := settextalign(Grd_Sevk.Canvas.handle, ta_right);
               Grd_Sevk.Canvas.textrect(Rect, Rect.right - 2, Rect.Top + 2,Grd_Sevk.Cells[ACol, ARow]);
               settextalign(Grd_Sevk.Canvas.handle, saga_yasla);
              end ;

veya 
if ((ARow > 0) and (ACol = 0)  or (ACol = 1)) then
Sonuç değişmedi. sıkıntı or kullanımında ama çözemedim.

if ((ARow > 0) and (ACol = 0))  then
Bu şekilde kullanınca düzgün çalışıyor ama tabi 2 kolonu sağ yaslamıyor.
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Cevapla
#4
If (ARow>0) and ((ACol=0) or (ACol=1)) Then

Satır 0 dan büyükse ve kolon 0 yada 1 ise çalışır
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
WWW
Cevapla
#5
(13-04-2017, Saat: 09:03)esistem Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
If (ARow>0) and ((ACol=0) or (ACol=1)) Then

Satır 0 dan büyükse ve kolon 0 yada 1 ise çalışır
Bence de doğru olan bu.
Logic işlemler yaparken parantezler çok çok önemli Wink
There's no place like 127.0.0.1
WWW
Cevapla
#6
Merhaba,

Delphi'de operatör önceliği aşağıdaki gibidir:

@, not: first (highest)  
*, /, div, mod, and, shl, shr, as: second  
+, -, or, xor : third  
=, <>, <, >, <=, >=, in, is : fourth (lowest) 

(Listeyi Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol adresinden aldım.)

Sizin ilk mesajdaki kodunuza göre if şartını inceleyelim:

if (ARow > 0) and (ACol = 0)  or (ACol = 1) then
önce parantezler işlenecek. Yani

if (FALSE) AND (FALSE) OR (TRUE) then 

gibi bir şey olacak. Sonra önce AND işlenecek


if (FALSE) OR (TRUE) then

son olarak da OR işlenecek. Yukarıdaki örneğe göre de sonuç aşağıdaki gibi olacak


if (TRUE) then

Yani if şartı gerçekleşmiş olacak.

SimaWB'nin de önerdiği gibi bu gibi durumlarda fazladan parantez kullanmak hem hata yapmayı azaltacak, hem de kodu okumayı kolaylaştıracaktır.

İyi çalışmalar
Cevapla
#7
Esistem' in önerdiği gibi yaptım Eskiler bilir NACAR saat gibi çalıştı  Smile  İlgilenen emeği gecen tüm arkadaşlara teşekkür ederim Allah c.c razı olsun.
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Star ıdHTTP Post hakkında? [Çözüldü] Cyber 1 84 06-02-2018, Saat: 13:36
Son Yorum: Cyber
  WSDL Import Tanımlaması hakkında adelphiforumz 10 254 26-01-2018, Saat: 12:01
Son Yorum: Fesih ARSLAN
  Delphi Eval Hakkında narkotik 8 183 26-01-2018, Saat: 01:46
Son Yorum: narkotik
  Layout View Hakkında (Çözüldü) yhackup 8 563 15-12-2017, Saat: 08:28
Son Yorum: Fesih ARSLAN
Question listbox hakkında yardım BY-HAYALET 21 503 06-12-2017, Saat: 15:09
Son Yorum: frmman



Konuyu Okuyanlar: 1 Ziyaretçi