arkadaşlar buldum, hocam zaten orada ipucu vermiş aslında göstermiş fakat ben yanlış yapmışım hocam dan özür diliyorum. yardımları için çok teşekkür ediyorum.
bilgi olması açısından açıklıyorum.
bir internet sayfasının kodlarına baktığınızda eğer iki tane form var ise ve bunların içerisindeki nesnelere bilgi göndermek isityorsanız şu şekilde olmalıymış.
hocamın yukarıda verdiği kod ile açmış olduğunuz sayfadaki formları bulabilir daha sonra
Webbrowser1.OleObject.Document.forms.Item(1).Item(0).value := edit1.text;
diyerek o formdaki nesneye bilgi gönderebilirsiniz..
hocam allah seni başımızdan eksik etmesin inşallah sizin gibi birinle tanışma şerefine erişirim.
Pos veya Ansipos fonksiyonu..
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: Pos veya Ansipos fonksiyonu..
marman hocam, vermiş olduğunuz bu kod ile şu yapılabilirmi,
html parse olayında surekli pos fonksiyonu ile 'href=' tag ini arayıp aldığı değeri bir değişkene kopyalıyoruz.
sizin örnek olarak vermiş olduğunuz kod ile
Memo1.Lines.Add( Format(' WebBrowser1.OleObject.Document.Forms.Item(%d).Elements.Item(%d).Name -> ''%s'' ', [i, j, WebBrowser1.OleObject.Document.Forms.Item(i).Elements.Item(j).Tag(i).name ]) );
şeklinde kullanarak sayfa içerisindeki tagleri ve değerlerini alamazmıyız. yukarıda gösterdiğim şekilde denedim fakat programım kırıldı.
nerede yanlış yapıyorum.
teşekkürler
html parse olayında surekli pos fonksiyonu ile 'href=' tag ini arayıp aldığı değeri bir değişkene kopyalıyoruz.
sizin örnek olarak vermiş olduğunuz kod ile
Memo1.Lines.Add( Format(' WebBrowser1.OleObject.Document.Forms.Item(%d).Elements.Item(%d).Name -> ''%s'' ', [i, j, WebBrowser1.OleObject.Document.Forms.Item(i).Elements.Item(j).Tag(i).name ]) );
şeklinde kullanarak sayfa içerisindeki tagleri ve değerlerini alamazmıyız. yukarıda gösterdiğim şekilde denedim fakat programım kırıldı.
nerede yanlış yapıyorum.
teşekkürler
Re: Pos veya Ansipos fonksiyonu..
arkadaşlar webbrowserda sayfanın kaynak kodunu alıp arama yaptırıyorum. sorunum şu
sayfanın kaynak kodundan kullanıcı nikleri alıyorum. kullanıcı nikleri ЯOŤΛŚIŻ★ws★KAOS şeklinde özel karakterle yazılmış.
Bunu alıp memo1 yapıştırdığımda şu şekilde çıkıyor ?OT?SIZ?ws?KAOS
bu sorunu nasıl düzeltebilirim.
sayfanın kaynak kodundan kullanıcı nikleri alıyorum. kullanıcı nikleri ЯOŤΛŚIŻ★ws★KAOS şeklinde özel karakterle yazılmış.
Bunu alıp memo1 yapıştırdığımda şu şekilde çıkıyor ?OT?SIZ?ws?KAOS
bu sorunu nasıl düzeltebilirim.
Re: Pos veya Ansipos fonksiyonu..
ansipos komutunda şöyle bir sıkıntı var:
AnsiPos aradığımız karakterin, aranan string içerisinde varsa kaçıncı karakter olduğunu veriyor, yoksa 0 (sıfır) değerini döndürüyor.
peki aradığımız karakter stringin sıfırıncı karakteri ise?
işte o zamanda 0 (sıfır) değerini döndürüyor.
AnsiPos aradığımız karakterin, aranan string içerisinde varsa kaçıncı karakter olduğunu veriyor, yoksa 0 (sıfır) değerini döndürüyor.
peki aradığımız karakter stringin sıfırıncı karakteri ise?
işte o zamanda 0 (sıfır) değerini döndürüyor.
-
- Üye
- Mesajlar: 16
- Kayıt: 22 May 2009 01:53
Re: Pos veya Ansipos fonksiyonu..
Konuyu Hortlatıyorum... )
POS -> BÜYÜK KÜÇÜK HARF DUYARLIDIR. "içerik" ile "İçerik" karşılaştırırsan -1 döner.
AnsiPos -> Büyükküçük duyarlı değildir. "belge" ile "BeLgE" aynıdır. ve kelimeyi bulur.
AMA EN ÖNEMLİ VE PROGRAMCILARIN ATLADIĞI PÜF NOKTAYI BELİRTEYİM !!!
AnsiPos -> "içerik" ile "İÇERİK" aynı değildir. -1 döner. Çünkü i harfi büyüyünce I olur. İ olmaz. bu sebeple bir çok programcı Ansipos çalışmıyor sanar.
StringReplace(s, 'i','İ', [rfReplaceAll, rfIgnoreCase]); yapması gerekir. i harfinin büyük versiyonu İ değildir!!! burada ingilizce giriyor devreye. ş ö ü ğ gibi harflerde sorun yok. Sorun sadece " i " ile ilgili..
yazi := "Burada içerik yazdım.";
j:= Ansipos(yazi,'İÇERİK'); /// ekrana -1 yazar.
ama
yazi := "Burada içerik yazdım.";
yazi := StringReplace(yazi, 'i','İ', [rfReplaceAll, rfIgnoreCase]);
yazi := AnsiUpperCase(yazi);
j:= Ansipos(yazi,'İÇERİK'); /// ekrana 8 yazar.
i harfinin büyük halinin I olduğunu bildiğiniz zaman ve Ansipos 'un buna göre arama yaptığını bildiğiniz zaman herşey daha kolay olur. Bu arada tüm string fonksiyonları örneğin Ansiuppercase de dahil, i harfini büyüttüğünde I yapar..
yazi := "Burada içerik yazdım.";
yazi := AnsiUpperCase(yazi); // sonuç => "BURADA IÇERIK YAZDIM" olur...
kolay gelsin..
POS -> BÜYÜK KÜÇÜK HARF DUYARLIDIR. "içerik" ile "İçerik" karşılaştırırsan -1 döner.
AnsiPos -> Büyükküçük duyarlı değildir. "belge" ile "BeLgE" aynıdır. ve kelimeyi bulur.
AMA EN ÖNEMLİ VE PROGRAMCILARIN ATLADIĞI PÜF NOKTAYI BELİRTEYİM !!!
AnsiPos -> "içerik" ile "İÇERİK" aynı değildir. -1 döner. Çünkü i harfi büyüyünce I olur. İ olmaz. bu sebeple bir çok programcı Ansipos çalışmıyor sanar.
StringReplace(s, 'i','İ', [rfReplaceAll, rfIgnoreCase]); yapması gerekir. i harfinin büyük versiyonu İ değildir!!! burada ingilizce giriyor devreye. ş ö ü ğ gibi harflerde sorun yok. Sorun sadece " i " ile ilgili..
yazi := "Burada içerik yazdım.";
j:= Ansipos(yazi,'İÇERİK'); /// ekrana -1 yazar.
ama
yazi := "Burada içerik yazdım.";
yazi := StringReplace(yazi, 'i','İ', [rfReplaceAll, rfIgnoreCase]);
yazi := AnsiUpperCase(yazi);
j:= Ansipos(yazi,'İÇERİK'); /// ekrana 8 yazar.
i harfinin büyük halinin I olduğunu bildiğiniz zaman ve Ansipos 'un buna göre arama yaptığını bildiğiniz zaman herşey daha kolay olur. Bu arada tüm string fonksiyonları örneğin Ansiuppercase de dahil, i harfini büyüttüğünde I yapar..
yazi := "Burada içerik yazdım.";
yazi := AnsiUpperCase(yazi); // sonuç => "BURADA IÇERIK YAZDIM" olur...
kolay gelsin..
Re: Pos veya Ansipos fonksiyonu..
Bu güzel bilgi için teşekkürler emeğine sağlık