Botón que cierra aplicación

Iniciado por Soir, 28 Agosto 2010, 20:27 PM

0 Miembros y 1 Visitante están viendo este tema.

Soir

Hola!!!


Me gustaría hacer que mi aplicación al darle a un botón se cierre.


Os dejo imagen....




Saludos!! Soy bastante novato en esto, así que si me podeis explicar despacio mejor... Gracias. ^^

Ariath

Bonita foto de Nagrand :) .

Una curiosidad, ¿Estás programando un selector de reinos en C++?

Lo digo porque, a mí personalmente, me parece un poco exagerado usar C++ para ese tipo de aplicaciones. Pueden hacerse bien en C# o incluso VB sin gran esfuerzo.

Salu2


P.D: No se si esto te servirá, pero te lo pongo por si acaso, lo he encontrado googleando por ahí:

Código (cpp) [Seleccionar]

bool clsWin = DestroyWindow(ventana);

if(clsWin != 0)
{
 //Tratamiento de errores.
}


Osea, ese sería el código que destruye la ventana, faltaría manejar el evento de clic en el botón de la misma.

Soir

Hmmm... Gracias, bueno, esque te comento, tengo 2 reinos, entonces, 1 es blizzlike y el otro custom, entonces cuando se ejecute el botón de entrar al blizzlike, se renombran los parches custom del reino custom para que no jueges en el blizzlike con los parches del custom...

Es algo lioso... jaja

Mira, intente meterlo en el click, y me sale:

1>Index Loader 1.0.cpp
1>c:\users\jorge\documents\visual studio 2008\projects\index loader 1.0\index loader 1.0\Form1.h(96) : error C2065: 'DestroyWindow' : identificador no declarado


Ariath

#3
Espera, espera... que me estoy perdiendo un poco, ¿Los parches custom de los que hablas... se refieren simplemente al cambio de realmlist?

Hace no mucho hice yo un lanzador para el servidor para el que juego, aunque en este caso Java, por aquello de la multiplataforma.

El DestroyWindow no lo he usado nunca, solo es algo que he encontrado antes, pero supongo que requiere como argumento la ventana que tiene que destruir, y en esa muestra le has suprimido el argumento.

Salu2


P.D: Mmm... vale, te preguntaba en la anterior versión del post este si estabas usando Visual Studio, pero ya veo que si.

Prueba con esto que acabo de encontrar: http://answers.yahoo.com/question/index?qid=20080211145558AAWTB26

Soir

Cita de: Ariath en 28 Agosto 2010, 21:57 PM
Espera, espera... que me estoy perdiendo un poco, ¿Los parches custom de los que hablas... se refieren simplemente al cambio de realmlist?

Hace no mucho hice yo un lanzador para el servidor para el que juego, aunque en este caso Java, por aquello de la multiplataforma.

El DestroyWindow no lo he usado nunca, solo es algo que he encontrado antes, pero supongo que requiere como argumento la ventana que tiene que destruir, y en esa muestra le has suprimido el argumento.

Salu2


P.D: Mmm... vale, te preguntaba en la anterior versión del post este si estabas usando Visual Studio, pero ya veo que si.

Prueba con esto que acabo de encontrar: http://answers.yahoo.com/question/index?qid=20080211145558AAWTB26

Estoy muy verde en esto... jeje

Bueno, me refiero a los parches custom de mi servidor, editar screens, edita logos, terrenos etc... entonces a ese programa le voy a añadir dos imagenes, cuando hagas click a la del reino blizzlike se renombran los parches para que el WoW no los cargue ,así la gente puede alternar a que reino quieren jugar.

y eso tampoco me sirve... jeje

Si lo pongo así



me da este error
1>c:\users\jorge\documents\visual studio 2008\projects\index loader 1.0\index loader 1.0\Form1.h(99) : error C2228: el operando izquierdo de '.close' debe tener class/struct/union
1>        el tipo es 'IndexLoader10::Form1 ^const '
1>        ¿deseaba utilizar '->' en su lugar?


Y si cambio el . por el -> tambien me sale error

Ariath

Oye... solo una sugerencia, ¿Y si usas C# en vez de C++ para el programa?

No se cuanto código tendrás pero... es que creo que te dará menos quebraderos de cabeza ;) .

Salu2

Littlehorse

Creo que deberías empezar leyendo este post

Lo que quieres hacer es sencillo tanto en C# como en C++, pero dependerá del código que lleves hecho. Si puedes exponerlo, aunque sea el manejo de la ventana, se haría mucho mas fácil.

Saludos
An expert is a man who has made all the mistakes which can be made, in a very narrow field.

Soir

#7
Hmmm

No tengo casi nada de código, estoy sobre todo con los gráficos.

Aquí os lo dejo...
Código (csharp) [Seleccionar]

#pragma once


namespace IndexLoader10 {

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>
/// Resumen de Form1
///
/// ADVERTENCIA: si cambia el nombre de esta clase, deberá cambiar la
///          propiedad 'Nombre de archivos de recursos' de la herramienta de compilación de recursos administrados
///          asociada con todos los archivos .resx de los que depende esta clase. De lo contrario,
///          los diseñadores no podrán interactuar correctamente con los
///          recursos adaptados asociados con este formulario.
/// </summary>
public ref class Form1 : public System::Windows::Forms::Form
{
public:
Form1(void)
{
InitializeComponent();
//
//TODO: agregar código de constructor aquí
//
}

protected:
/// <summary>
/// Limpiar los recursos que se estén utilizando.
/// </summary>
~Form1()
{
if (components)
{
delete components;
}
}
private: System::Windows::Forms::Button^  button1;
protected:

private:
/// <summary>
/// Variable del diseñador requerida.
/// </summary>
System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code
/// <summary>
/// Método necesario para admitir el Diseñador. No se puede modificar
/// el contenido del método con el editor de código.
/// </summary>
void InitializeComponent(void)
{
System::ComponentModel::ComponentResourceManager^  resources = (gcnew System::ComponentModel::ComponentResourceManager(Form1::typeid));
this->button1 = (gcnew System::Windows::Forms::Button());
this->SuspendLayout();
//
// button1
//
this->button1->BackColor = System::Drawing::Color::Transparent;
this->button1->BackgroundImageLayout = System::Windows::Forms::ImageLayout::None;
this->button1->Cursor = System::Windows::Forms::Cursors::Hand;
this->button1->FlatAppearance->BorderSize = 0;
this->button1->FlatStyle = System::Windows::Forms::FlatStyle::Popup;
this->button1->ForeColor = System::Drawing::Color::Transparent;
this->button1->Location = System::Drawing::Point(692, 0);
this->button1->Name = L"button1";
this->button1->Size = System::Drawing::Size(26, 24);
this->button1->TabIndex = 0;
this->button1->UseVisualStyleBackColor = false;
this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
//
// Form1
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->BackgroundImage = (cli::safe_cast<System::Drawing::Image^  >(resources->GetObject(L"$this.BackgroundImage")));
this->ClientSize = System::Drawing::Size(719, 569);
this->Controls->Add(this->button1);
this->FormBorderStyle = System::Windows::Forms::FormBorderStyle::None;
this->MaximizeBox = false;
this->Name = L"Form1";
this->StartPosition = System::Windows::Forms::FormStartPosition::CenterScreen;
this->Text = L"Form1";
this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
this->ResumeLayout(false);

}
#pragma endregion
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
}
private: System::Void Form1_Load(System::Object^  sender, System::EventArgs^  e) {
}
};
}


Littlehorse

Estas en la sección incorrecta, te lo muevo a .NET.

Saludos

An expert is a man who has made all the mistakes which can be made, in a very narrow field.

Ariath

#9
Si al BBCode de Code lo dejas como [Code=cpp] te quedará mucho mejor el código posteado ;) .

Salu2


P.D: LH, échame un cable si te acuerdas anda, ¿Cual era el BBCode para indicar precisamente que no procese lo de dentro como BBCode? xD.

Me lo dijeron hace tiempo, pero se me ha olvidado, y cada vez que quiero mostrar como usar uno... no puedo xD.

P.D 2: Gracias :) , Estaba probando antes con [NoBBCode], y claro... xD.