Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Browser işlem yaptırma
#11
VCL denediniz mi
Cevapla
#12
(21-09-2022, Saat: 10:36)nguzeller Adlı Kullanıcıdan Alıntı: VCL denediniz mi


Yok hocam uygulamayı sadece FMX tarafında yapıyorum.
Cevapla
#13
https://stackoverflow.com/questions/7443...form-appli



unit u_urlOpen;

interface

uses
 System.SysUtils, System.Types, System.UITypes, System.Classes,
 System.Variants,
{$IF Defined(IOS)}
 macapi.helpers, iOSapi.Foundation, FMX.helpers.iOS;
{$ELSEIF Defined(ANDROID)}
Androidapi.JNI.GraphicsContentViewText,
 Androidapi.JNI.Net,
  Androidapi.JNI.App,
 Androidapi.helpers;
{$ELSEIF Defined(MACOS)}
Posix.Stdlib;
{$ELSEIF Defined(MSWINDOWS)}
Winapi.ShellAPI, Winapi.Windows;
{$ENDIF}

type
 tUrlOpen = class
   class procedure Open(URL: string);
 end;

implementation

class procedure tUrlOpen.Open(URL: string);
{$IF Defined(ANDROID)}
var
 Intent: JIntent;
{$ENDIF}
begin
{$IF Defined(ANDROID)}
 Intent := TJIntent.Create;
 Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
 Intent.setData(StrToJURI(URL));
 tandroidhelper.Activity.startActivity(Intent);
 // SharedActivity.startActivity(Intent);
{$ELSEIF Defined(MSWINDOWS)}
 ShellExecute(0, 'OPEN', PWideChar(URL), nil, nil, SW_SHOWNORMAL);
{$ELSEIF Defined(IOS)}
 SharedApplication.OpenURL(StrToNSUrl(URL));
{$ELSEIF Defined(MACOS)}
 _system(PAnsiChar('open ' + AnsiString(URL)));
{$ENDIF}
end;

end.
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#14
FMX tarafında bu işi yapmak, VCL göre çok daha zorlu olcaktır, hatta bazı işleri yapamayabilirsin. fmx tarafında hiç denemedim.
Cevapla
#15
(21-09-2022, Saat: 16:42)mcuyan Adlı Kullanıcıdan Alıntı: https://stackoverflow.com/questions/7443...form-appli



unit u_urlOpen;

interface

uses
 System.SysUtils, System.Types, System.UITypes, System.Classes,
 System.Variants,
{$IF Defined(IOS)}
 macapi.helpers, iOSapi.Foundation, FMX.helpers.iOS;
{$ELSEIF Defined(ANDROID)}
Androidapi.JNI.GraphicsContentViewText,
 Androidapi.JNI.Net,
  Androidapi.JNI.App,
 Androidapi.helpers;
{$ELSEIF Defined(MACOS)}
Posix.Stdlib;
{$ELSEIF Defined(MSWINDOWS)}
Winapi.ShellAPI, Winapi.Windows;
{$ENDIF}

type
 tUrlOpen = class
   class procedure Open(URL: string);
 end;

implementation

class procedure tUrlOpen.Open(URL: string);
{$IF Defined(ANDROID)}
var
 Intent: JIntent;
{$ENDIF}
begin
{$IF Defined(ANDROID)}
 Intent := TJIntent.Create;
 Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
 Intent.setData(StrToJURI(URL));
 tandroidhelper.Activity.startActivity(Intent);
 // SharedActivity.startActivity(Intent);
{$ELSEIF Defined(MSWINDOWS)}
 ShellExecute(0, 'OPEN', PWideChar(URL), nil, nil, SW_SHOWNORMAL);
{$ELSEIF Defined(IOS)}
 SharedApplication.OpenURL(StrToNSUrl(URL));
{$ELSEIF Defined(MACOS)}
 _system(PAnsiChar('open ' + AnsiString(URL)));
{$ENDIF}
end;

end.

Hocam class hiç kullanmadım class procedure nasıl tetikleyeceğim?

Acaba siz sorunu yanlış anlamış olabilir misiniz?
Cevapla
#16
@mcuyan un paylaştığı class procedure'ü aşağıdaki gibi tetikleyebilirsiniz.
tUrlOpen.Open('https://www.delphican.com/');
not if
Cevapla
#17
Hocam bu kodları bı dosyaya kopyalayın ve uzantısını pas yapın. Proje ile aynı foldera atıp, kullanacağınız formun unitinde ki uses kısmına pas dosyasının adını verin (öncesinde sağda projeye add diyip o pas dosyasını eklemeyi unutmayın)..
Sonrasında @RAD Coder in dediği gibi kullanabilirsiniz .
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#18
(21-09-2022, Saat: 22:43)mcuyan Adlı Kullanıcıdan Alıntı: Hocam bu kodları bı dosyaya kopyalayın ve uzantısını pas yapın. Proje ile aynı foldera atıp, kullanacağınız formun unitinde ki uses kısmına pas dosyasının adını verin (öncesinde sağda projeye add diyip o pas dosyasını eklemeyi unutmayın)..
Sonrasında @RAD Coder in dediği gibi kullanabilirsiniz .

Üstat ilginize teşekkür ederim siz yazmadan önce kodları calıştırdım.
Şöyle bir sorun var sanırım yanlış anlattım yada anladınız, pc'deki browserı açıyor. 
FMXChromium kendi WebBrowserı yok mu? neden pc'deki browserı açıyor.
Cevapla
#19
Siz Default tarayıcı neyi seçtiyseniz onla açar.. Siz Delphi formu üzerinden mi göstermek istiyorsunuz? Yani forma yerleştirdiğiniz bir webbrowser ile?

O zaman@mrmarman üstadın söylediği yöntemi kullanacaksınız..
// Bilgi paylaştıkça çoğalır.. 

Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  ListView list sonu işlem yapma theercan 1 1.568 09-08-2019, Saat: 15:00
Son Yorum: hi_selamlar
  Web Browser ve JavaScript narkotik 1 1.466 17-11-2018, Saat: 02:12
Son Yorum: narkotik
  Web Browser Açılış Süresi Sorunu pro_imaj 7 4.632 16-05-2017, Saat: 00:36
Son Yorum: AliZairov



Konuyu Okuyanlar: 1 Ziyaretçi