![]() |
Delphi-Version: 7
Internet per Edit öffnen
Hi ich möchte eine Suchleiste programmieren und habe es bisher so hinbekommen das er nur firefox sehr oft öffnet.
Delphi-Quellcode:
Wie kann ich ihm sagen das er das suchen soll was in dem Memo steht?
procedure TForm1.GooglesucheChange(Sender: TObject);
begin ShellExecute(handle, nil, Pchar('d:\firefox\Firefox.exe'), nil, nil, SW_SHOW) end; |
AW: Internet per Edit öffnen
Viele Wege führen nach Rom. Einer davon: Du könntest eine URL (z.B. zu Google) zusammenbasteln, die den Suchbegriff enthält. Und dann machst Du ein ShellExecute auf diese URL und veranlasst Windows damit, diese im Standard-Browser zu öffnen. Berücksichtige dabei unbedingt die Angabe http/https, damit Windows den String auch als URL erkennt.
Alternativ könntest Du Dich auch mit den APIs der Such-Dienstleister auseinandersetzen und einen REST-Request absenden. Damit würdest Du Dich vom Browser lösen, falls das interessant ist. |
AW: Internet per Edit öffnen
Könntest du mir ein Beispiel zeigen? Das mit der Url zusammenbasteln wäre denk ich besser.
also theoretisch so?
Delphi-Quellcode:
Wäre das so richtig? :D
var x : string;
begin x := Edit1.Text; ShellExecute(handle, nil, Pchar('https://www.X.de'), nil, nil, SW_SHOW) |
AW: Internet per Edit öffnen
Ich kann es gerade nicht testen, aber vom draufgucken sieht es gut aus.
Probiere es doch aus. ;-) Danach gehst Du mit einem Browser Deiner Wahl zu einer Suchmaschine Deiner Wahl und suchst nach einem Begriff. Und dann schaust Du Dir in der Adresszeile des Browsers an, wie da der Suchbegriff integriert wurde. Im ersten Schritt solltest Du nach einfachen Begriffen ohne Leerzeichen und Umlaute suchen. Wenn das zuverlässig geht, müsstest Du Dich darum kümmern, wie Sonderzeichen (Umlaute, Leerzeichen, Satzzeichen etc.) in URLs kodiert werden. Mögliches Stichwort hier "URLEncode". |
AW: Internet per Edit öffnen
das ist jetzt exakt mein code:
Delphi-Quellcode:
Bloß das mit dem Enter klappt noch nicht so ganz :D
procedure TForm1.GooglesucheChange(Sender: TObject);
var x : string; key : OleVariant; begin x := GoogleSuche.Text; if key = #13 then begin ShellExecute(handle, nil, Pchar('https://www.X.de'), nil, nil, SW_SHOW) end; end; end. |
AW: Internet per Edit öffnen
Hallo,
Zitat:
|
AW: Internet per Edit öffnen
Ich denke das OnChange-Event ist für deine Zwecke nicht das richtige. Wenn du mit der Auswertung von Tasten (z.B. die Enter-Taste) arbeiten willst, würde ich an deiner Stelle das OnKeyDown-Event des Formulars verwenden. Nicht vergessen in den Formulareigenschaften "KeyPreview" auf True zu setzen.
|
AW: Internet per Edit öffnen
Ok Danke.
Habe es probiert und bekomme die anweisung '[Fehler] Unit1.pas(38): Unbekannte Anweisung: 'X'
Delphi-Quellcode:
procedure TForm1.GooglesucheKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState); X : string; begin x := GoogleSuche.Text; if key = #13 then begin ShellExecute(handle, nil, Pchar('https://www.X.de'), nil, nil, SW_SHOW) end; end; end. |
AW: Internet per Edit öffnen
Um 'X' als lokale Variable zu deklarieren, musst Du das Wort "var" davor schreiben.
Am Rande bemerkt: Du scheinst Deine ersten Schritte in Delphi zu machen. Das ist gut. :-) Aber um Dir selbst einiges an Frust zu ersparen, solltest Du einen kurzen Blick z.B. in den Delphi Crash-Kurs ( ![]() :-) |
AW: Internet per Edit öffnen
Und die nächste Antwort lautet:
VK_RETURN Und danach kommt noch die Frage: Warum erscheint nun "Die Webseite kann nicht angezeigt werden". |
AW: Internet per Edit öffnen
ohh gott was nen fehler >.<
Und ich dachte ich krieg es langasam hin haha. Man lernt nie aus xD Hab mir schon viele Tutorials angesehen und manche entsprechen nicht meinem Bildungsstand (Hallo Welt) und manche sind mir noch zu hoch :D. Ich komm aber immer besser klar :P Bekomme jetzt diesen Fehler bei der Schleife für Enter: [Fehler] Unit1.pas(41): Inkompatible Typen |
AW: Internet per Edit öffnen
@BadenPower
The God! :Glaskugel: |
AW: Internet per Edit öffnen
Kleiner Tip:
Teile das in unterschiedliche Methoden auf, dann wird es erheblich übersichtlicher und dadurch einfacher zu verstehen/warten:
Delphi-Quellcode:
procedure TForm1.GooglesucheKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState); begin if key = VK_RETURN then begin SucheBeiGoogle( GoogleSuche.Text ); end; end; // Ich habe mal deine bisherige Lösung hierrein verwurstet // Evtl. fällt dir jetzt auch dein Fehler auf ;o) procedure TForm1.SucheBeiGoogle( const Suchbegriffe: string ); begin ShellExecute(handle, nil, Pchar('https://www.' + Suchbegriffe + '.de'), nil, nil, SW_SHOW); end; |
AW: Internet per Edit öffnen
Leute seit Ihr heute morgen wieder gemein...
Zitat:
|
AW: Internet per Edit öffnen
Zitat:
Zitat:
|
AW: Internet per Edit öffnen
@SirRufo ich denke ich weiß wie du es meinst im sinne von Lösung :D.
|
AW: Internet per Edit öffnen
Es hilft auch ungemein, wenn man mal genau formuliert, was man eigentlich will. Das "Internt offnen"? :shock: (Aber bitte schließe es erst, wenn ich es nicht mehr brauche. :mrgreen:) Man kann ein Programm/eine Anwendung öffnen oder eine Dose Ravioli :P
Was du willst ist den Standardbrowser öffnen und ihm gleich eine bestimmte Webseite anzeigen. Dann findet man wahrscheinlich schon die Lösung mit der Foren suche. |
AW: Internet per Edit öffnen
Naja eig wollte ich die Seite die ich in der Suchleiste eingebe suchen. Das klappt jetzt auch so wie ich das möchte. bin derzeit dabei alles zu verbinden und die Funktionen einzubauen.
|
AW: Internet per Edit öffnen
Zitat:
Delphi-Quellcode:
eingegeben hast im Browser öffnen.
TEdit
NIX Suchen... :stupid: |
AW: Internet per Edit öffnen
ich gebe
Delphi-Quellcode:
ein
'www.' + Edit1.Text + '.de'
|
AW: Internet per Edit öffnen
Zitat:
Delphi-Quellcode:
In D7 auf "Trim" klicken und dann [F1].
'www.' + Trim(Edit1.Text) + '.de'
|
AW: Internet per Edit öffnen
dann würde aber doch ohne .de gegoogelt werden oder? wenn ich es richtig verstanden habe :?
"Trim entfernt entfernt alle am Anfang und Ende des mit S angegebenen Strings vorhandenen Leer- und Steuerzeichen." |
AW: Internet per Edit öffnen
Welcher Teil von '.de' sieht für Dich nach einem Leer- oder Steuerzeichen aus?
Abgesehen davon wendest Du trim ja nicht auf alles an, sondern nur auf den Inhalt des Edits. Und nochwas, Du willst doch nciht googlen, sondern eine Webseite aufmachen. Oder warum machst Du aus jedem Wort einen deutschen Weblink? Sherlock |
AW: Internet per Edit öffnen
Zitat:
Wenn Du XYZ in Dein Edit-Feld eingibst, dann versucht der Browser ![]() aufzurufen. Gibst Du XYZ.com ein, dann ruft der Browser ![]() auf. |
AW: Internet per Edit öffnen
Hä jetzt check ich gar nix mehr^^ und wenn ich ne seite mit "-" eingeben möchte? Gibt ja auch seiten die "-" in ihrer URL haben.
|
AW: Internet per Edit öffnen
Zitat:
Ich-bin-toll ein Leer oder Steuerzeichen, welches durch Trim() entfernt würde? Diese Eingabe würde nun bei Dir ![]() aufrufen. Was möchtest Du nun eigentlich? Googeln oder nur eine Seite aufrufen? |
AW: Internet per Edit öffnen
Ich hab gedacht das '-' auch als Steuerzeichen gilt. :oops:
mb |
AW: Internet per Edit öffnen
Zitat:
|
AW: Internet per Edit öffnen
Steht in #14 :cyclops:
|
AW: Internet per Edit öffnen
Zitat:
#4 #13 (bewußt falsch, um Dir den Fehler zu zeigen) #14 #15 gegeben. Und schau Dir Deine Anwort in #16 an, dort läßt Du uns vermuten, dass Du die Antworten zu Suche mit Google bereits verstanden hättest. |
AW: Internet per Edit öffnen
Ich war etwas verwirrt wegen 'www.google.de/?gws_rd=ssl#q=' hab es aber selber gecheckt weil wenn ich
![]() |
AW: Internet per Edit öffnen
Dir fehlen noch einige Delphi-Grundlagen :!:
Demnächst willst Du - vermutlich - wissen, wie man Programmeinstellungen speichern und wieder laden/öffnen kann. Schau' Dir dann dazu den Krempel zu TINIFILE an... Und weshalb stehst Du bei Daniel eigentlich unter "Welpenschutz" :?: MfG |
AW: Internet per Edit öffnen
Liste der Anhänge anzeigen (Anzahl: 1)
Ich weiß doch das mir noch einiges fehlt :P mache aktiv mit Delphi was seit 1 Woche. Hab jetzt die AppBar fürs erste fertig hier mal ein kleines Bild.
Ich wüsste nix das ich unter Welpenschutz stehe. Wie kommst drauf? |
AW: Internet per Edit öffnen
Zunächst sehe ich keine Probleme bei den Delphi-Grundlagen, sondern am grundsätzlichen Verständnis, was passieren muss, dass das Gewünschte passiert (völlig losgelöst von der Programmierung).
Wenn ich eine Web-Seite aufrufen möchte, dann muss ich dem Browser eine URL "http://www.example.com/subpage?variable=value" geben. Diese kann er dann aufrufen. Will ich aber bei einer Suchmaschine nach Begriffen suchen, dann muss ich zunächst in Erfahrung bringen, wie das bei dieser Suchmaschine denn abläuft. Wenn ich diese Informationen zusammen habe erst dann kann ich mit der Umsetzung loslegen, und erst dann werden die Grundlagen relevant, die ich für diese Umsetzung brauche. Im Moment sind wir aber wohl noch vor dem erst dann :mrgreen: |
AW: Internet per Edit öffnen
Naja ich bin grundsätzlich einer der mit geschlossenen Augen durch die Welt geht^^ ich weiß zwar das sich die URL ändert wenn man was sucht aber war bisher immer der Meinung das die URL von bsp. Google gleich bleibt bis man was eingibt. Naja wieder was neues gelernt^^
|
AW: Internet per Edit öffnen
Zitat:
Welpenschutz: Wurde z.B. zwischen #20 und #21 was (von Daniel) gelöscht? Laß Dich nicht von Deinem Ziel ablenken, aber hör' gefälligst auf die D7-Gruftis/alten D7-Hasen (zu denen ich mich nicht zählen darf). :oops: Und verwexle DX7 nicht mit D7 :wink: |
AW: Internet per Edit öffnen
Zitat:
Diese Analyse wäre deine erste Aufgabe gewesen. Und ja, offene Augen sind da Minimalanforderung. |
AW: Internet per Edit öffnen
Zitat:
Ich google natürlich sonst würde ich kaum was zu stande kriegen :D ich gebe mir mühe haha |
AW: Internet per Edit öffnen
nein @deddyH habe die AppBar heute fertiggestellt sieht jetzt spitze aus und nach einer modernen Appbar.
Wenn mir einer sagt wie ich ein Screenshot vom kompletten Desktop mache könnte ich euch alles zeigen^^. Habe SnagIt und mit dem kann man nur IMHO einzelne Fenster screenshoten |
AW: Internet per Edit öffnen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz