Entwickler-Ecke
WinForms - Hyperlink im Label
nullplan001 - Fr 02.06.06 09:41
Titel: Hyperlink im Label
Hi all,
mal wieder eine blöde Frage: Wie kann ich in einem Label einen Hyperlink vereinbaren? Also konkret will ich auf einem Splash-Screen den Hinweis anzeigen, dass mein Programm unter der GNU GPL veröffentlicht wurde. Da ich an dieser Stelle aber nicht die ganze GPL hinschreiben will, möchte ich einen Hyperlink auf
http://www.gnu.org/licenses/gpl.html noch mit dort rein setzen. Selbstverständlich kommt noch eine Datei namens "COPYING" in die Distribution mit rein, aber die liest sich ja eh kein Mensch durch, und die Lizensierung ist erst gültig, wenn im zu lizensierenden Objekt ein Verweis darauf steht. Glaub ich zumindest...
Achso, von wegen und "machs doch im Installer"... klar, wenn ich einen bräuchte. Alles, was mein Programm vorraussetzt, ist .NET 2.0, was in jedem gut geführten Windows-Haushalt zu finden sein sollte. Weil ich auch nicht garantieren kann und will (was die GPL sogar ausdrücklich verbietet. Ich muss mein Programm frei distributierbar machen), dass das Prog von meiner HP gesaugt wird (wo ich vorher noch die GPL einschieben könnte), muss ich es so, oder über einen Verweis im MainForm lösen. Ich ziehe den Splash-Screen jedoch vor. Den kann man nämlich als Kompo wiederverwerten ;) .
Tschö,
nullplan
Christian S. - Fr 02.06.06 09:54
Einfach ein Linklabel auf die Form und in dessen OnClick:
C#-Quelltext
1:
| Process.Start(@"http://www.entwickler-ecke.de"); |
nullplan001 - Fr 02.06.06 10:40
Hi,
danke für die Antwort. Ich werde es mal testen.
Tschö,
nullplan
Edit: Tja, ich kriege nur ein "Unknown Identifier 'Process'". Die MSDN-Suche ist bei .NET auch nicht sonderlich auskunftsfreudig. Ich will doch nur einen Prozess starten. Ist das zuviel verlangt. *hrmpf* Also den Code krieg ich nicht kompiliert. Was mache ich falsch?
Constructor (Chrome)
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:
| constructor SplashForm; begin lGPL := new Label; lHref := new Label; lGPL.Text := 'Dieses Programm steht unter den Bedingungen der GNU GPL.'; lGPL.Location := new Point(20,20); lGPL.ForeColor := Color.Black; lGPL.BorderStyle := BorderStyle.None; lHref.Text := 'http://www.gnu.org/licenses/gpl.txt'; lHref.Location := new Point(50,50); lHref.ForeColor := Color.Blue; lHref.Font.Style := FontStyle.Underlined; StartPosition := FormStartPosition.CenterScreen; ClientSize := new Size(80,80); Controls.Add(lGPL); Controls.Add(lHref); lHref.Click += new EventHandler(lHref_Click); end; |
OnClick (Chrome)
1: 2: 3: 4:
| method lHref_Click(ob: Object; e : EventArgs); begin Process.Create(@'http://www.gnu.org/licenses/gpl.txt'); end; |
Da ist doch nix falsches dran, oder? Ich kriege aber in der gehighlighteten Zeile den Fehler mit unknown Identifier.
An Assemblies binde ich ein: System, System.Drawing und System.Windows.Forms. Also das Standardpaket für GUI-Anwendungen in .NET. Muss da noch was dazu?
nullplan001 - Mi 06.12.06 16:36
Fehler erkannt: Das @. Und ich brauche System.Diagnostics. Dann geht es.
Tschö,
nullplan
Kha - Do 07.12.06 13:33
nullplan001 hat folgendes geschrieben: |
Die MSDN-Suche ist bei .NET auch nicht sonderlich auskunftsfreudig. |
Ich muss mich ernsthaft fragen, ob du dort überhaupt gesucht hast, denn eine Suche nach "Process" bringt schon als ersten Eintrag einen Volltreffer. Und selbst in diesem Forum hast du wohl auf die Suche verzichtet, sonst hättest du
diesen [
http://www.c-sharp-forum.de/viewtopic.php?p=323293#323293] Post gefunden.
PS: Nicht das @ ist der Fehler sondern die Hochkommata.
Christian S. - Do 07.12.06 13:44
Khabarakh hat folgendes geschrieben: |
PS: Nicht das @ ist der Fehler sondern die Hochkommata. |
Er nutzt Chrome, nicht C# ;-)
Kha - Fr 08.12.06 14:50
Whoops :angel: . Wobei ich zugeben muss, dass ich mir ohne Nachschauen nicht einmal sicher gewesen wäre, ob Chrome Escape-Sequenzen kennt oder nicht.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!