| Autor |
Beitrag |
mutterholzbein
      
Beiträge: 47
Erhaltene Danke: 1
[Win XP pro,Win 7pro, Ubuntu 10.04]
[MS Visual Studio 2008 pro TeamSystem,VS-2010-Ultimate [C, C++ (u.a. mit QT4), C#, PHP]
|
Verfasst: So 20.01.08 23:31
hoi leutz,
ich habe ein wenig mit der yahoo-api rumgespielt. funzzt alles soweit auch ohne große probleme...
mit der api kann man aus einer anwendung heraus eine websuche realisieren.
es gibt auch eine ClickableUrl()-eigenschaft die auch soweit geht (zeigt clickbare links in der RichTextBox an).
ABER:
ich habe keinen blassen schimmer wie ich diese eigenschaft an einen neuen process übergeben könnte...
nun meine frage
wie genau muß ich die abfrage nach einem click auf die url realisieren um dann einen process mit dem inhalt der url zu starten?
hier mal 3 zeilen code zum besseren verständnis:
C#-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| Process toLnk; StringWriter sw = new StringWriter(); foreach (Yahoo.API.WebSearchResponse.ResultType result in suchRes.Result) { sw.WriteLine("Titel:\t\t" + result.Title); sw.WriteLine("Beschreibung: " + result.Summary); sw.WriteLine("URL:\t\t" + result.Url); sw.WriteLine("Clickbare URL: ", result.ClickUrl); sw.WriteLine("=================================="); } richTextBox1.Text = sw.ToString(); progressBar1.Value = 100; |
vielleicht hat einer ja ne idee?
danke im voraus
|
|
Kha
      
Beiträge: 3803
Erhaltene Danke: 176
Arch Linux
Python, C, C++ (vim)
|
Verfasst: Mo 21.01.08 13:11
Da musst du überhaupt nichts machen  . Wenn DetectUrls true ist, erkennt die RTB alle URLs automatisch. Was du allerdings noch programmieren musst, ist die auszuführende Aktion beim Klicken, nämlich über das LinkClicked-Event. Einen Beispiel-Code findest du im SDK unter genau diesem Stichwort.
|
|
mutterholzbein 
      
Beiträge: 47
Erhaltene Danke: 1
[Win XP pro,Win 7pro, Ubuntu 10.04]
[MS Visual Studio 2008 pro TeamSystem,VS-2010-Ultimate [C, C++ (u.a. mit QT4), C#, PHP]
|
Verfasst: Mo 21.01.08 18:56
Titel: röö: ;)
hey Khabarakh,
jaa DetectUrls ist true...
danke erstmal, aber eben dieses click_event ist ja das problem...
aber danke für den tip mit dem sdk. nur welches sdk meinst .net 2 oder .net 3 (ich tippe mal, "spontan" auf .net 2)?
greetz mhb
|
|
Kha
      
Beiträge: 3803
Erhaltene Danke: 176
Arch Linux
Python, C, C++ (vim)
|
Verfasst: Mo 21.01.08 20:46
Ein 3.0-SDK gibt es gar nicht, das steckt jetzt im Windows-SDK. Da das Event ja wohl in beiden Frameworks enthalten ist, würde ich einfach in dem nachschauen, das installiert ist  . Oder natürlich direkt im VS über Hilfe bzw. F1, was auch immer da eigentlich angezeigt wird *g* (MSDN-Lib  ? ).
[OT]
Ein auf das Y2K-Problem optimierte Version  ?
[/OT]
|
|
mutterholzbein 
      
Beiträge: 47
Erhaltene Danke: 1
[Win XP pro,Win 7pro, Ubuntu 10.04]
[MS Visual Studio 2008 pro TeamSystem,VS-2010-Ultimate [C, C++ (u.a. mit QT4), C#, PHP]
|
Verfasst: Mo 21.01.08 22:07
Titel: röö
Khabarakh hat folgendes geschrieben: | | Ein 3.0-SDK gibt es gar nicht, das steckt jetzt im Windows-SDK. |
... das ist so nicht ganz richtig. das 3.0 sdk ist eigentlich für vista gedacht, aber laut microsoft, mit dem .net 3-redistributable-fw auch für xp verwendbar!  deswegen hab ich ja gefragt, hab beide installiert...
na gut ist nebensache... weiss jedenfalls nu wo ich nochmal reingucken muß/kann...
dank'schee, dafür
p.s. mit der F1-taste isses leider bei mir nicht getan...
ich blödmann habe mir ne msdn-doku fürs xna-fw gezogen + installiert, und die hat erstmal eiskalt meine normale hilfe überschrieben (is sehr nervig weil ich für arbeit öfter die hilfe benötige aber selbst wenn ich nach c/c++ spezifischen sachen suche bekomme ich nur xna-bezogene ergebnisse[ausser ich hab netz dann noch die ol-hilfe])...sobald ich mal zeit finde werde ich diesen faux pa beheben...
naja gut,is auch egal...
greetz mhb
|
|
JüTho
      
Beiträge: 2021
Erhaltene Danke: 6
Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
|
Verfasst: Di 22.01.08 08:36
[OT] SDK-Doku Offline-Version
@mutterholzbein,
zu dem von Dir genannten F1-Problem: Ich wollte die Doku lieber in einem separaten Fenster haben und verzichte deshalb auf F1 und Integration in die IDE. Stattdessen habe ich per Link im Autostart-Ordner folgenden Befehl (komplett in einer Zeile, Zeilenumbruch gilt nur hier im Forum) eingebaut:
Quelltext 1: 2: 3: 4:
| "C:\Programme\Gemeinsame Dateien\Microsoft Shared\Help 8\dexplore.exe" /helpcol ms-help://MS.NETFramework.v20.de /LaunchNamedUrlTopic DefaultPage /usehelpsettings NETFrameworkSDK.20 |
Vielleicht hilft Dir dieser Hinweis. Jürgen
|
|
mutterholzbein 
      
Beiträge: 47
Erhaltene Danke: 1
[Win XP pro,Win 7pro, Ubuntu 10.04]
[MS Visual Studio 2008 pro TeamSystem,VS-2010-Ultimate [C, C++ (u.a. mit QT4), C#, PHP]
|
Verfasst: Di 22.01.08 11:09
Titel: rööh: tip
|
|
JüTho
      
Beiträge: 2021
Erhaltene Danke: 6
Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
|
Verfasst: Di 22.01.08 11:31
Titel: Re: rööh: tip
mutterholzbein hat folgendes geschrieben: | nur der inhalt stimmt nicht! wie gesagt alles überschrieben...  |
Sorry, ich hatte angenommen, dass nur Verweise (z.B. in der Registry) falsch gesetzt worden seien. Dass M$ beim Download solche Inhalte überschreiben würde... Jürgen
|
|
mutterholzbein 
      
Beiträge: 47
Erhaltene Danke: 1
[Win XP pro,Win 7pro, Ubuntu 10.04]
[MS Visual Studio 2008 pro TeamSystem,VS-2010-Ultimate [C, C++ (u.a. mit QT4), C#, PHP]
|
Verfasst: Di 22.01.08 11:56
Titel: Re: rööh: tip
|
|
Kha
      
Beiträge: 3803
Erhaltene Danke: 176
Arch Linux
Python, C, C++ (vim)
|
Verfasst: Di 22.01.08 16:12
Titel: Re: röö
mutterholzbein hat folgendes geschrieben: | | das ist so nicht ganz richtig. |
Hö  ? Dann zeige mir bitte mal einen Downloadlink. Ich zeige dir in der Zwischenzeit einen anderen Link:
|
|
mutterholzbein 
      
Beiträge: 47
Erhaltene Danke: 1
[Win XP pro,Win 7pro, Ubuntu 10.04]
[MS Visual Studio 2008 pro TeamSystem,VS-2010-Ultimate [C, C++ (u.a. mit QT4), C#, PHP]
|
Verfasst: Di 05.02.08 23:40
Titel: re..clickbare urls in rtfbox
hoi leutz,
habe das problem auf die von mir erdachte weise gelöst.
den zugehörigen source schiebe ich die tage, der vollständigkeit halber, nach.
greetz mhb

|
|
mutterholzbein 
      
Beiträge: 47
Erhaltene Danke: 1
[Win XP pro,Win 7pro, Ubuntu 10.04]
[MS Visual Studio 2008 pro TeamSystem,VS-2010-Ultimate [C, C++ (u.a. mit QT4), C#, PHP]
|
Verfasst: Mi 05.03.08 11:38
Titel: Der Code zur obigen Frage
hallo leutz,
zwar etwas spät aber besser als nie (bin gerade voll im prüfungsstress), hier der code von den clickbaren url's in rtb-boxen:
als erstes in den obigen zeilen der anwendung (auf klassenebene) einen prozess initialisieren:
C#-Quelltext 1:
| private Process goTo = new Process(); |
als nächstes die registerkarte ereignisse im design-modus aufrufen und die eigenschaft
LinkClicked wählen, doppelclick ins freie feld rechts daneben u folgende zeilen code eintippen:
C#-Quelltext 1: 2: 3: 4:
| private void richTextBox1_LinkClicked_1(object sender, LinkClickedEventArgs e) { goTo = Process.Start(e.LinkText); } |
oder mit ner kleinen fehlerbehandlung:
C#-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| private void richTextBox1_LinkClicked_1(object sender, LinkClickedEventArgs e) { try { goTo = Process.Start(e.LinkText); } catch (Exception eXc) { richTextBox1.Rtf = @"{\rtf1\ansi \b Achtung:\b0 " + eXc.Message + @"!}"; } } |
das wars schon...
es gibt auch noch andere (und elegantere) möglichkeiten den link ausführen zulassen aber diese simple methode war in meinem fall am besten geeignet...
für fragen usw. PN
greetz mhb 
|
|
Kha
      
Beiträge: 3803
Erhaltene Danke: 176
Arch Linux
Python, C, C++ (vim)
|
Verfasst: Mi 05.03.08 17:43
Titel: Re: Der Code zur obigen Frage
mutterholzbein hat folgendes geschrieben: | | als erstes in den obigen zeilen der anwendung (auf klassenebene) einen prozess initialisieren: |
Sehr sinnig, wenn man als einzige Aktion ihn mit einer zweiten Prozess-Instanz überschreibt *g* . Bei dem gezeigten Code brauchst du das goTo-Feld jedenfalls überhaupt nicht.
|
|
mutterholzbein 
      
Beiträge: 47
Erhaltene Danke: 1
[Win XP pro,Win 7pro, Ubuntu 10.04]
[MS Visual Studio 2008 pro TeamSystem,VS-2010-Ultimate [C, C++ (u.a. mit QT4), C#, PHP]
|
Verfasst: Mo 24.03.08 03:20
Titel: Re: Der Code zur obigen Frage
Khabarakh hat folgendes geschrieben: |
...
Sehr sinnig, wenn man als einzige Aktion ihn mit einer zweiten Prozess-Instanz überschreibt *g* . Bei dem gezeigten Code brauchst du das goTo-Feld jedenfalls überhaupt nicht.
|
 na dann las mal hören ..
greetz mhb
|
|
Kha
      
Beiträge: 3803
Erhaltene Danke: 176
Arch Linux
Python, C, C++ (vim)
|
Verfasst: Mo 24.03.08 11:27
Nun denn  :
C#-Quelltext 1: 2: 3: 4:
| void richTextBox1_LinkClicked_1(object sender, LinkClickedEventArgs e) { Process.Start(e.LinkText); } |
|
|