Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
VCL Projelerinde Componetsiz Görsellik
#1
Merhabalar , 
Hayırlı Cumalar;

VCL Projelerimizin görsel kısmı için bazen komponent arayışına girip, o bileşen mi daha iyi olur, bu bileşen mi daha güzel, yada onun xe10 sürümünü bulabilir miyim, lisans ücreti ne kadardır vb karıştırıp araştırıp duruyoruz.

Ben fazladan komponente bulaşmadan ucuza görsellik arayışımda bootsrapt templateleri kullanıyorum. (Deterjan reklamı gibi oldu  Smile ).

Yazdığım uygulamanın ekran görüntüsünden de tahmin edebileceğiniz gibi veritabanından bilgileri okuyup htmle çevirip webrowsera bastım. Sıfır Komponentle max görsellik elde ettim.

Altta kullandığım bootsrapt  templatenin kaynak kodu :
https://codepen.io/Ascuns/pen/vjGgjV

Bizimkisi bi fikir ve bakış açısı;
Y9EJ0f.jpg

Tabi bir avantajıda şu ; html kodunu dinamik olarak oluşturduğunuz için bu ekranı da derleme gerekmeden içeriği değiştirebilirsiniz.
Kalan ömrünün en genç build’indesin.
Counter artar, deadline sabit.
Age++ çalışıyor, rollback yok.
Her yer exception
Cevapla
#2
Çok güzel görünüyor. Elinize emeğinize sağlık.
İki sorum olacak. Birincisi delphinin içerisinde bu html kodunu hangi bileşen ile gösterdiniz.
İkincisi verileri nasıl html in içerisine gönderdiniz.
Eğer mümkünse bu sorularımla ilgili örnek kod paylaşabilirmisiniz.
Cevapla
#3
(19-12-2020, Saat: 00:32)tuna Adlı Kullanıcıdan Alıntı: Çok güzel görünüyor. Elinize emeğinize sağlık.
İki sorum olacak. Birincisi delphinin içerisinde bu html kodunu hangi bileşen ile gösterdiniz.
İkincisi verileri nasıl html in içerisine gönderdiniz.
Eğer mümkünse bu sorularımla ilgili örnek kod paylaşabilirmisiniz.

Delphinin standart bileşeni olan Webbrowser bileşenini kullanabilirsin.
Ben (sql server dan) verileri bu şekilde html table row'a çevirdim.  Bunu farklı şekillerde de yapabilirsin.

YwACxq.png
Bu oluşan stringi yukarıda linkini verdiğim şablonun table elementi içine yükledim.
Burada yol ikiye ayrılıyor.
İstersen alttaki kod ile bu html stringini webrowsera yükleyebilirsin
veya bu stringi bir html dosyaya kaydedip webbrowser.navigate metoduyla dosyayı adresini göstererek yükleyebilirsin

uses
 ActiveX;

procedure WB_LoadHTML(WebBrowser: TWebBrowser; HTMLCode: string);
var
 sl: TStringList;
 ms: TMemoryStream;
begin
 WebBrowser.Navigate('about:blank');
 while WebBrowser.ReadyState < READYSTATE_INTERACTIVE do
  Application.ProcessMessages;

 if Assigned(WebBrowser.Document) then
 begin
   sl := TStringList.Create;
   try
     ms := TMemoryStream.Create;
     try
       sl.Text := HTMLCode;
       sl.SaveToStream(ms);
       ms.Seek(0, 0);
       (WebBrowser.Document as IPersistStreamInit).Load(TStreamAdapter.Create(ms));
     finally
       ms.Free;
     end;
   finally
     sl.Free;
   end;
 end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 WB_LoadHTML(WebBrowser1,lvHTML);
end;
Kalan ömrünün en genç build’indesin.
Counter artar, deadline sabit.
Age++ çalışıyor, rollback yok.
Her yer exception
Cevapla
#4
Affınıza sığınarak bir soru da ben sormak istiyorum.
Bende aynı şekilde kullanmak istemiştim ama sonrasında bırakmak zorunda kalmıştım. HTML de sıkıntı yok fakat javascript tabanlı bileşenlerde sorun yaşamıştım. Google bileşenlerini örnek verebilirim.Bunları çalıştırmak istiyorum (https://developers.google.com/chart/inte...cs/gallery). ama sayfa boş geliyor.

Bir çözüm öneriniz varmıdır?

Not:
Delphi 10.4.1 twebbrowser ve tedgebrowser bileşenlerinin ikisinide denedim
EDGE v.87 yüklü

Dosyayı localde oluşturarak edge, chrome ve firefox de denedim sıkıntısız açıyor. 

Teşekkürler...
Cevapla
#5
(19-12-2020, Saat: 19:05)ugorkem Adlı Kullanıcıdan Alıntı: Affınıza sığınarak bir soru da ben sormak istiyorum.
Bende aynı şekilde kullanmak istemiştim ama sonrasında bırakmak zorunda kalmıştım. HTML de sıkıntı yok fakat javascript tabanlı bileşenlerde sorun yaşamıştım. Google bileşenlerini örnek verebilirim.Bunları çalıştırmak istiyorum (https://developers.google.com/chart/inte...cs/gallery). ama sayfa boş geliyor.

Bir çözüm öneriniz varmıdır?

Not:
Delphi 10.4.1 twebbrowser ve tedgebrowser bileşenlerinin ikisinide denedim
EDGE v.87 yüklü

Dosyayı localde oluşturarak edge, chrome ve firefox de denedim sıkıntısız açıyor. 

Teşekkürler...



Merhaba,

Şimdi bahsettiğiniz konu hakkında deneme yaptım.
ilk başta evet dediğiniz gibi oldu ancak sonrasında çözdüm şöyleki;
html dosyanızın head bölümünün en başına şu metatagı ekleyin ancak en başına ekleyin.
 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
ve birde 
WebBrowser1.Silent := True;
yaptınızmı sanırım sorun tamamdır. 
Eğer yinede çalışmazda dosyanızın bi örneğini buraya yükleyin onun üzerinden bakayim.
Kalan ömrünün en genç build’indesin.
Counter artar, deadline sabit.
Age++ çalışıyor, rollback yok.
Her yer exception
Cevapla
#6
İlginiz ve yanıtınız için teşekkürler.
Belirtiğiniz tagları zaten kullanıyordum fakat bir türlü olmamıştı.
Kodları local dosya yada memo içinden almak yerine TPageProducer içinden almak aklıma geldi denedim ve oldu. Smile

Sanırım benim bilgisayarda bişey var.


(19-12-2020, Saat: 19:47)bydelphi Adlı Kullanıcıdan Alıntı:
(19-12-2020, Saat: 19:05)ugorkem Adlı Kullanıcıdan Alıntı: Affınıza sığınarak bir soru da ben sormak istiyorum.
Bende aynı şekilde kullanmak istemiştim ama sonrasında bırakmak zorunda kalmıştım. HTML de sıkıntı yok fakat javascript tabanlı bileşenlerde sorun yaşamıştım. Google bileşenlerini örnek verebilirim.Bunları çalıştırmak istiyorum (https://developers.google.com/chart/inte...cs/gallery). ama sayfa boş geliyor.

Bir çözüm öneriniz varmıdır?

Not:
Delphi 10.4.1 twebbrowser ve tedgebrowser bileşenlerinin ikisinide denedim
EDGE v.87 yüklü

Dosyayı localde oluşturarak edge, chrome ve firefox de denedim sıkıntısız açıyor. 

Teşekkürler...



Merhaba,

Şimdi bahsettiğiniz konu hakkında deneme yaptım.
ilk başta evet dediğiniz gibi oldu ancak sonrasında çözdüm şöyleki;
html dosyanızın head bölümünün en başına şu metatagı ekleyin ancak en başına ekleyin.
 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
ve birde 
WebBrowser1.Silent := True;
yaptınızmı sanırım sorun tamamdır. 
Eğer yinede çalışmazda dosyanızın bi örneğini buraya yükleyin onun üzerinden bakayim.
Cevapla




Konuyu Okuyanlar: 1 Ziyaretçi