Mit enter website aufrufen



  • wie müsste das mit keypress aussehen??kann ich das direkt in

    private: System::Void textBox1_TextChanged(System::Object^  sender, System::EventArgs^  e) {
                 if(keypress == enter) {
        this->webBrowser1->Navigate(this->textBox1->Text);
    }
    

    einsetzen?



  • C++ler schrieb:

    kann ich das direkt in ... einsetzen?

    Nein. Dazu musst eben das KeyPress Ereignis abonnieren und nicht das TextChanged Ereignis.

    Simon



  • wie würde das in meinem Falle dann aussehen??

    so?

    private: System::Void textBox1_KeyPress(System::Object^ sender, System::Windows::Forms::KeyPressEventArgs^ e)
    {
        if(keypress == VK_RETURN)
        this->webBrowser1->Navigate(this->textBox1->Text);  
    
       else
        mache nix; (wie müsste das da rein)??
    }
    


  • Nix VK_RETURN.. benutze doch einfach die KeyPressEventArgs.

    Wenns nix zu tun gibt (else), dann mach halt einfach nix.

    Simon



  • private void textBox1_KeyPress(System::Object^ sender,KeyPressEventArgs e)
    {
    if (e.KeyChar == (char)Keys.Enter)
    { e.KeyChar = (char)Keys.None; e.Handled = true;
    SelectNextControl((Control)sender,true,true,true,true);
    }
    }
    

    ??



  • ??



  • private void textBox1_KeyPress(System::Object^ sender, System::Windows::Forms::KeyPressEventArgs e) 
    { 
      if (e.KeyChar == '\r') 
      { 
        this->webBrowser1->Navigate(this->textBox1->Text);  
        e.Handled = true; 
      }
    }
    

    !?



  • wenn ich das einfüge kommt bei mir folgender fehler:

    1>------ Neues Erstellen gestartet: Projekt: Browser, Konfiguration: Release Win32 ------
    1>Die Zwischen- und Ausgabedateien für das Projekt "Browser" mit der Konfiguration "Release|Win32" werden gelöscht.
    1>Kompilieren...
    1>stdafx.cpp
    1>Kompilieren...
    1>Browser.cpp
    1>c:\dokumente und einstellungen\????\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(179) : error C2061: Syntaxfehler: Bezeichner 'object'
    1>c:\dokumente und einstellungen\?????\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(129) : error C2039: 'textBox1_TextChanged': Ist kein Element von 'Browser::Form1'
    1>        c:\dokumente und einstellungen\?????\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(21): Siehe Deklaration von 'Browser::Form1'
    1>c:\dokumente und einstellungen\??????\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(129) : error C2065: 'textBox1_TextChanged': nichtdeklarierter Bezeichner
    1>c:\dokumente und einstellungen\?????????\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(129) : error C3350: "System::EventHandler": Ein Delegatkonstruktor erwartet 2 Argument(e).
    1>c:\dokumente und einstellungen\?????\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(181) : error C2065: 'e': nichtdeklarierter Bezeichner
    1>c:\dokumente und einstellungen\????\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(181) : error C2228: Links von ".KeyChar" muss sich eine Klasse/Struktur/Union befinden.
    1>        Typ ist ''unknown-type''
    1>c:\dokumente und einstellungen\???????\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(184) : error C2065: 'e': nichtdeklarierter Bezeichner
    1>c:\dokumente und einstellungen\??????\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(184) : error C2228: Links von ".Handled" muss sich eine Klasse/Struktur/Union befinden.
    1>        Typ ist ''unknown-type''
    1>AssemblyInfo.cpp
    1>Das Buildprotokoll wurde unter "file://c:\Dokumente und Einstellungen\??????\Eigene Dateien\Visual Studio 2008\Projects\Browser\Browser\Release\BuildLog.htm" gespeichert.
    1>Browser - 8 Fehler, 0 Warnung(en)
    


  • Ist halt einach falsch:

    private void textBox1_KeyPress(Object^ sender, KeyPressEventArgs^ e)
    

    Ev. wäre es besser VB.NET oder C# zu lernen. Ist einfacher.
    Simon



  • Also wäre folgendes richtig?

    private void textBox1_KeyPress(Object^ sender, KeyPressEventArgs^ e)
    { 
      if (e.KeyChar == '\r') 
      { 
        this->webBrowser1->Navigate(this->textBox1->Text);  
        e.Handled = true; 
      }
    }
    


  • Syntaktisch fast..

    private sind in C++/CLI auch Labels, d.h. es muss so aussehen.

    ref class A
    {
    private:
       void ...
    };
    


  • Also genau:

    [cpp]
    ref class A {
    private void textBox1_KeyPress(Object^ sender, KeyPressEventArgs^ e)
    {
    if (e.KeyChar == '\r')
    {
    this->webBrowser1->Navigate(this->textBox1->Text);
    e.Handled = true;
    }
    }
    }
    [/cpp}



  • nein. hinter private brauchts ein :

    Aber hey, Du hast doch sicher auch ein Kompiler der dir hilft.. oder?



  • Nun sieht mein code folgendermaßen aus:

    ref class A {
    private: void textBox1_KeyPress(Object^ sender, KeyPressEventArgs^ e) {
    if (e.KeyChar == '\r')
    {
    this->webBrowser1->Navigate(this->textBox1->Text);
    e.Handled = true;
    }
    }
    }
    

    Aber jetzt gibts wieder 12 fehler:

    1>------ Neues Erstellen gestartet: Projekt: Browser, Konfiguration: Release Win32 ------
    1>Die Zwischen- und Ausgabedateien für das Projekt "Browser" mit der Konfiguration "Release|Win32" werden gelöscht.
    1>Kompilieren...
    1>stdafx.cpp
    1>Kompilieren...
    1>Browser.cpp
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(189) : error C2059: Syntaxfehler: '}'
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(189) : error C2143: Syntaxfehler: Es fehlt ';' vor '}'
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(189) : error C2238: Unerwartete(s) Token vor ';'
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(129) : error C2039: 'textBox1_TextChanged': Ist kein Element von 'Browser::Form1'
    1>        c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(21): Siehe Deklaration von 'Browser::Form1'
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(129) : error C2065: 'textBox1_TextChanged': nichtdeklarierter Bezeichner
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(129) : error C3350: "System::EventHandler": Ein Delegatkonstruktor erwartet 2 Argument(e).
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(181) : error C2228: Links von ".KeyChar" muss sich eine Klasse/Struktur/Union befinden.
    1>        Typ ist 'System::Windows::Forms::KeyPressEventArgs ^'
    1>        Wollten Sie stattdessen '->' verwenden?
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(183) : error C2039: 'webBrowser1': Ist kein Element von 'Browser::Form1::A'
    1>        c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(179): Siehe Deklaration von 'Browser::Form1::A'
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(183) : error C2227: Links von "->Navigate" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(183) : error C2039: 'textBox1': Ist kein Element von 'Browser::Form1::A'
    1>        c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(179): Siehe Deklaration von 'Browser::Form1::A'
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(183) : error C2227: Links von "->Text" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
    1>c:\dokumente und einstellungen\?\eigene dateien\visual studio 2008\projects\browser\browser\Form1.h(184) : error C2228: Links von ".Handled" muss sich eine Klasse/Struktur/Union befinden.
    1>        Typ ist 'System::Windows::Forms::KeyPressEventArgs ^'
    1>        Wollten Sie stattdessen '->' verwenden?
    1>AssemblyInfo.cpp
    1>Das Buildprotokoll wurde unter "file://c:\Dokumente und Einstellungen\Alexander\Eigene Dateien\Visual Studio 2008\Projects\Browser\Browser\Release\BuildLog.htm" gespeichert.
    1>Browser - 12 Fehler, 0 Warnung(en)
    

    dass is alles etwas komisch



  • dass is alles etwas komisch

    😕

    Was ist daran komisch?

    Liest du dir die Fehlermeldungen deines Compilers überhaupt durch?

    Die schliessende, geschweifte Klammer einer Klasse wird mit einem Semikolon abgeschlossen. 🙄



  • leider klappt garnichts!!!

    könnte es jemand bitte richten?

    #pragma once
    
    namespace Browser {
    
    	using namespace System;
    	using namespace System::ComponentModel;
    	using namespace System::Collections;
    	using namespace System::Windows::Forms;
    	using namespace System::Data;
    	using namespace System::Drawing;
    
    	/// <summary>
    	/// Zusammenfassung für Form1
    	///
    	/// Warnung: Wenn Sie den Namen dieser Klasse ändern, müssen Sie auch
    	///          die Ressourcendateiname-Eigenschaft für das Tool zur Kompilierung verwalteter Ressourcen ändern,
    	///          das allen RESX-Dateien zugewiesen ist, von denen diese Klasse abhängt.
    	///          Anderenfalls können die Designer nicht korrekt mit den lokalisierten Ressourcen
    	///          arbeiten, die diesem Formular zugewiesen sind.
    	/// </summary>
    	public ref class Form1 : public System::Windows::Forms::Form
    	{
    	public:
    		Form1(void)
    		{
    			InitializeComponent();
    			//
    			//TODO: Konstruktorcode hier hinzufügen.
    			//
    		}
    
    	protected:
    		/// <summary>
    		/// Verwendete Ressourcen bereinigen.
    		/// </summary>
    		~Form1()
    		{
    			if (components)
    			{
    				delete components;
    			}
    		}
    
    	private: System::Windows::Forms::Button^  button1;
    
    	protected: 
    
    	protected: 
    
    	private: System::Windows::Forms::Button^  button2;
    	private: System::Windows::Forms::TextBox^  textBox1;
    	private: System::Windows::Forms::Button^  button3;
    	private: System::Windows::Forms::WebBrowser^  webBrowser1;
    
    	protected: 
    
    	private:
    		/// <summary>
    		/// Erforderliche Designervariable.
    		/// </summary>
    		System::ComponentModel::Container ^components;
    
    #pragma region Windows Form Designer generated code
    		/// <summary>
    		/// Erforderliche Methode für die Designerunterstützung.
    		/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
    		/// </summary>
    		void InitializeComponent(void)
    		{
    			this->button1 = (gcnew System::Windows::Forms::Button());
    			this->button2 = (gcnew System::Windows::Forms::Button());
    			this->textBox1 = (gcnew System::Windows::Forms::TextBox());
    			this->button3 = (gcnew System::Windows::Forms::Button());
    			this->webBrowser1 = (gcnew System::Windows::Forms::WebBrowser());
    			this->SuspendLayout();
    			// 
    			// button1
    			// 
    			this->button1->Location = System::Drawing::Point(12, 1);
    			this->button1->Name = L"button1";
    			this->button1->Size = System::Drawing::Size(75, 23);
    			this->button1->TabIndex = 1;
    			this->button1->Text = L"Zurück";
    			this->button1->UseVisualStyleBackColor = true;
    			this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
    			// 
    			// button2
    			// 
    			this->button2->Location = System::Drawing::Point(93, 0);
    			this->button2->Name = L"button2";
    			this->button2->Size = System::Drawing::Size(75, 24);
    			this->button2->TabIndex = 2;
    			this->button2->Text = L"Vor";
    			this->button2->UseVisualStyleBackColor = true;
    			this->button2->Click += gcnew System::EventHandler(this, &Form1::button2_Click);
    			// 
    			// textBox1
    			// 
    			this->textBox1->Location = System::Drawing::Point(174, 3);
    			this->textBox1->Name = L"textBox1";
    			this->textBox1->Size = System::Drawing::Size(983, 20);
    			this->textBox1->TabIndex = 3;
    			this->textBox1->TextChanged += gcnew System::EventHandler(this, &Form1::textBox1_TextChanged);
    			// 
    			// button3
    			// 
    			this->button3->Location = System::Drawing::Point(1163, 3);
    			this->button3->Name = L"button3";
    			this->button3->Size = System::Drawing::Size(75, 23);
    			this->button3->TabIndex = 4;
    			this->button3->Text = L"Go!";
    			this->button3->UseVisualStyleBackColor = true;
    			this->button3->Click += gcnew System::EventHandler(this, &Form1::button3_Click);
    			// 
    			// webBrowser1
    			// 
    			this->webBrowser1->Location = System::Drawing::Point(18, 30);
    			this->webBrowser1->MinimumSize = System::Drawing::Size(20, 20);
    			this->webBrowser1->Name = L"webBrowser1";
    			this->webBrowser1->ScriptErrorsSuppressed = true;
    			this->webBrowser1->Size = System::Drawing::Size(1220, 644);
    			this->webBrowser1->TabIndex = 5;
    			// 
    			// Form1
    			// 
    			this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
    			this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
    			this->ClientSize = System::Drawing::Size(1250, 699);
    			this->Controls->Add(this->webBrowser1);
    			this->Controls->Add(this->button3);
    			this->Controls->Add(this->textBox1);
    			this->Controls->Add(this->button2);
    			this->Controls->Add(this->button1);
    			this->Name = L"Form1";
    			this->Text = L"Browser";
    			this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
    			this->ResumeLayout(false);
    			this->PerformLayout();
    
    		}
    #pragma endregion
    	private: System::Void Form1_Load(System::Object^  sender, System::EventArgs^  e) {
    			 }
    	private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
    				 this->webBrowser1->GoBack();
    			 }
    private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) {
    			 this->webBrowser1->GoForward();
    		 }
    private: System::Void button3_Click(System::Object^  sender, System::EventArgs^  e) {
    			 this->webBrowser1->Navigate(this->textBox1->Text);
    		 }
    		 ref class A {
    private: void textBox1_KeyPress(Object^ sender, KeyPressEventArgs^ e) {
    if (e.KeyChar == '\r')
    {
    this->webBrowser1->Navigate(this->textBox1->Text);
    e.Handled = true;
    }
    }
    };
    
    };
    }
    


  • Moin,

    ein bischen falsch oder ?

    namespace Browser {
    
        using namespace System;
        using namespace System::ComponentModel;
        using namespace System::Collections;
        using namespace System::Windows::Forms;
        using namespace System::Data;
        using namespace System::Drawing;
    

    hand, mogel



  • Das hilft mir leider nicht sehr viel weiter



  • 1. Geh in den Designer, klicke die "textBox1" an und gehe dann auf die "Events". Dort machst Du einen doppel-klick auf das "KeyPressed" Ereigniss.
    2. In genau diese Methode, die dann im Code angezeigt wird schreibst Du diesen Code:

    if (e->KeyChar == '\r')
    {
      this->webBrowser1->Navigate(this->textBox1->Text);
      e->Handled = true;
    }
    


  • C++ler schrieb:

    Das hilft mir leider nicht sehr viel weiter

    versuch es mal so rum

    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
    
    namespace Browser {
    

Anmelden zum Antworten