• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Visual C++ 2 problemy nowicjusza

VPS Starter Arubacloud
0 głosów
107 wizyt
pytanie zadane 9 maja 2020 w C i C++ przez laytenek Nowicjusz (210 p.)

Witam.

Ostatnio napisałem swój pierwszy program okienkowy w C++, liczący potęgę wpisanej liczby, z możliwością resetu oraz zamknięcia.

https://imgur.com/a/VRy3Phb

Niestety napotkałem 2 problemy:
1. Podczas każdego wciśnięcia F5/debugowania, zwał jak zwał, wraz z okienkiem włącza mi się konsola cmd, a nie powinna. Jak się jej pozbyć?

2.Podczas kliknięcia przycisku "Reset" ustawiłem, aby textBox text zmieniał się na "0", a label na " ".
Chciałbym aby po ponownym kliknięciu w textBox to zero zniknęło i aby było puste pole do wpisania kolejnej liczby. Mógłby mi ktoś doradzić jak tego dokonać?

Z góry dziękuję za pomoc!

#pragma once

namespace Project6 {

	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>
	/// Summary for MyForm
	/// </summary>
	public ref class MyForm : public System::Windows::Forms::Form
	{
	public:
		MyForm(void)
		{
			InitializeComponent();
			//
			//TODO: Add the constructor code here
			//
		}

	protected:
		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
		~MyForm()
		{
			if (components)
			{
				delete components;
			}
		}
	private: System::Windows::Forms::Button^  button1;
	private: System::Windows::Forms::Label^  label1;
	private: System::Windows::Forms::TextBox^  textBox1;
	private: System::Windows::Forms::Label^  label2;
	private: System::Windows::Forms::Button^  button2;
	private: System::Windows::Forms::Button^  button3;
	protected:

	protected:

	protected:

	private:
		/// <summary>
		/// Required designer variable.
		/// </summary>
		System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		void InitializeComponent(void)
		{
			this->button1 = (gcnew System::Windows::Forms::Button());
			this->label1 = (gcnew System::Windows::Forms::Label());
			this->textBox1 = (gcnew System::Windows::Forms::TextBox());
			this->label2 = (gcnew System::Windows::Forms::Label());
			this->button2 = (gcnew System::Windows::Forms::Button());
			this->button3 = (gcnew System::Windows::Forms::Button());
			this->SuspendLayout();
			// 
			// button1
			// 
			this->button1->Location = System::Drawing::Point(15, 75);
			this->button1->Name = L"button1";
			this->button1->Size = System::Drawing::Size(75, 23);
			this->button1->TabIndex = 0;
			this->button1->Text = L"Oblicz";
			this->button1->UseVisualStyleBackColor = true;
			this->button1->Click += gcnew System::EventHandler(this, &MyForm::button1_Click);
			// 
			// label1
			// 
			this->label1->Location = System::Drawing::Point(15, 128);
			this->label1->Name = L"label1";
			this->label1->Size = System::Drawing::Size(257, 30);
			this->label1->TabIndex = 1;
			this->label1->Text = L"\r\n";
			this->label1->TextAlign = System::Drawing::ContentAlignment::MiddleCenter;
			// 
			// textBox1
			// 
			this->textBox1->Location = System::Drawing::Point(119, 33);
			this->textBox1->Name = L"textBox1";
			this->textBox1->Size = System::Drawing::Size(72, 20);
			this->textBox1->TabIndex = 2;
			this->textBox1->TextChanged += gcnew System::EventHandler(this, &MyForm::textBox1_TextChanged);
			// 
			// label2
			// 
			this->label2->AutoSize = true;
			this->label2->Location = System::Drawing::Point(12, 36);
			this->label2->Name = L"label2";
			this->label2->Size = System::Drawing::Size(101, 13);
			this->label2->TabIndex = 3;
			this->label2->Text = L"Wprowadź wartość:";
			this->label2->Click += gcnew System::EventHandler(this, &MyForm::label2_Click);
			// 
			// button2
			// 
			this->button2->Location = System::Drawing::Point(100, 213);
			this->button2->Name = L"button2";
			this->button2->Size = System::Drawing::Size(75, 23);
			this->button2->TabIndex = 4;
			this->button2->Text = L"Zamknij";
			this->button2->UseVisualStyleBackColor = true;
			this->button2->MouseClick += gcnew System::Windows::Forms::MouseEventHandler(this, &MyForm::button2_MouseClick);
			// 
			// button3
			// 
			this->button3->Location = System::Drawing::Point(100, 171);
			this->button3->Name = L"button3";
			this->button3->Size = System::Drawing::Size(75, 23);
			this->button3->TabIndex = 5;
			this->button3->Text = L"Reset";
			this->button3->UseVisualStyleBackColor = true;
			this->button3->Click += gcnew System::EventHandler(this, &MyForm::button3_Click);
			// 
			// MyForm
			// 
			this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
			this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
			this->ClientSize = System::Drawing::Size(284, 262);
			this->Controls->Add(this->button3);
			this->Controls->Add(this->button2);
			this->Controls->Add(this->label2);
			this->Controls->Add(this->textBox1);
			this->Controls->Add(this->label1);
			this->Controls->Add(this->button1);
			this->Name = L"MyForm";
			this->Text = L"MyForm";
			this->ResumeLayout(false);
			this->PerformLayout();

		}
#pragma endregion
	private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
		double a;
		a = Double::Parse(textBox1->Text);
		double wynik;
		wynik = a*a;
		if (a == 0)
		{
			
			label1->Text = "";
		}
		else
		{
			label1->Text = "Potęga wynosi: " + wynik.ToString();
		}
	}
	private: System::Void textBox1_TextChanged(System::Object^  sender, System::EventArgs^  e) {
	}
	private: System::Void label2_Click(System::Object^  sender, System::EventArgs^  e) {
	}
private: System::Void button2_MouseClick(System::Object^  sender, System::Windows::Forms::MouseEventArgs^  e) {
	Close();
}
private: System::Void button3_Click(System::Object^  sender, System::EventArgs^  e) {
	label1->Text = "";
	textBox1->Text = "0";
}
};
}


 

komentarz 9 maja 2020 przez laytenek Nowicjusz (210 p.)
To nie rozwiązało problemu :/

1 odpowiedź

0 głosów
odpowiedź 9 maja 2020 przez SimiVoid Pasjonat (19,790 p.)

1. Na samym początku pliku main dodaj:

#pragma comment(linker, "/SUBSYSTEM:windows /ENTRY:mainCRTStartup"
komentarz 9 maja 2020 przez adrian17 Ekspert (344,100 p.)
Zamiast pragmy, powinno to się dać przełączyć w opcjach projektu.

Podobne pytania

+1 głos
2 odpowiedzi 442 wizyt
pytanie zadane 26 kwietnia 2018 w C i C++ przez 4ever4 Nowicjusz (210 p.)
0 głosów
1 odpowiedź 3,385 wizyt
pytanie zadane 13 lipca 2020 w Python przez Marak123 Stary wyjadacz (11,190 p.)
0 głosów
1 odpowiedź 383 wizyt
pytanie zadane 27 maja 2018 w Java przez james30k Bywalec (2,260 p.)

92,451 zapytań

141,261 odpowiedzi

319,073 komentarzy

61,853 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...