¿Cómo crear un Windows Form?

Iniciado por Meta, 14 Marzo 2014, 21:08 PM

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

eferion

Cita de: Meta en 15 Marzo 2014, 23:53 PM
Es cuestión de tiempo todo a 64 bits.

Tampoco hay que centrarse siempre en los 32 bits, entonces. ¿Cuándo pasamos a los 64 bits?

¿Dentro ed 20 años?

¿Cuándo las noticias empiecen a comentar sobre las nuevas 128 bits? A lo mejor quedan 50 años para que llegue.

Como me dijo un amigo, usa 32 bits, también haz otro preparado para las 64 bits, jejejejje. Solo que las 32 bits llegan a casi 4 GB de RAM como máximo. En 64 bits, si no recuerdo mal,usan 192 GB de RAM, esto ya no estoy seguro. Aún así, ¿para qué tanta RAM?

El juego de PC Call of Duty: Ghost, hubo una queja de que requería cuando salió el juego al principio, 6 GB de RAM mínomo, alguien lo parcheó y se puede jugar con  4 GB e includo con 3 GB medianamente bien, con buen rendimiento incluido. O juegas con 6 GB de RAM, o lo parchear el ejecutable. Al final el juego salió un parche oficial sin decir que tiene, pero resuelve el problema de que ya se puede jugar oficialmente a 4 GB.

¿Ya tienen intensiones las empresas a ampliar RAM en los juegos cuando la realidad es distinta para hacernos negocios?

Programar en 64 bits, se necesita más RAM, más claro que el agua. Total, .net será el futuro y nativo como que será eliminado con los años y años, cuando lleve las cosas en la nube, peor todavía.

Un saludo.

No estoy del todo de acuerdo con tu punto de vista.

Si cada vez se necesita más RAM no es por pasar de 32 bits a 64... más bien es al revés... se propone el paso de 32 a 64 para poder dar cobertura a la cada vez mayor demanda de RAM y recursos.

Antes los ordenadores funcionaban con 4MB de RAM y eso era la leche... claro que eran sistemas operativos simples como ellos solos... no existía apenas el P&P... hoy en día queremos que los SO y los juegos tengan gráficos y efectos vistosos y "guapos" y eso tiene un coste... además queremos que el ordenador nos avise cuando se ha encendido la consola y otras tantas cosas más... el precio a pagar para que todo eso funcione es que requiere equipos más potentes y con más recursos.

Miky Gonzalez

Para crear una simple ventana (generalmente me gusta el código multiplataforma) te aconsejo usar GTK, versión 2 ó 3.

Un ejemplo de código que te podría servir, aunque necesitas documentarte:

#include <gtk/gtk.h>

int main(int argc, char *argv[]) {
/*! Los widgets que usaremos */
GtkWidget *win = NULL; // Ventana
GtkWidget *close = NULL; // Botón cerrar

/*! Inicializar GTK+ */
g_log_set_handler("Gtk", G_LOG_LEVEL_WARNING, (GLogFunc)gtk_false, NULL);
gtk_init(&argc, &argv);
g_log_set_handler ("Gtk", G_LOG_LEVEL_WARNING, g_log_default_handler, NULL);

/*! Hacer la ventana */
win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_container_set_border_width(GTK_CONTAINER(win), 10);
gtk_widget_realize(win);

/*! Botón que ayudará a cerrar la ventana */
close = gtk_button_new_with_label("CERRAR VENTANA");
gtk_container_add(GTK_CONTAINER(win), close);

/*! Devoluciones de llamadas (Callbacks) */
g_signal_connect((gpointer)close, "clicked", G_CALLBACK(gtk_main_quit), NULL); // Botón cerrar
g_signal_connect((gpointer)win, "destroy", G_CALLBACK(gtk_main_quit), NULL); // Ventana

/*! Entrar en bucle principal */
gtk_widget_show_all(win);
gtk_main();
return 0;
}


También puedes crear tu propia ventana con la API nativa de windows haciendo uso de funciones como: CreateWindowEx, RegisterClass, ShowWindow.
Espero que te haya servido de ayuda, puedes encontrar documentos de interés en:

http://www.winprog.org/tutorial/start.html
Mi blog personal, con información acerca de programación, seguridad, desarrollo y electrónica:

EN CONSTRUCCIÓN

BloodSharp

Pero el usuario Meta no quiere utilizar un framework como gtk, qt, mfc o wxwidgets lo dejó bien en claro, el quiere usar winapi puro. Para hacer eso te recomiendo que leas este tutorial de como hacerlo con winapi completo:

http://winapi.conclase.net/curso/index.php


B#



eferion

Cita de: IEAX en 16 Marzo 2014, 21:48 PM
Pero el usuario Meta no quiere utilizar un framework como gtk, qt, mfc o wxwidgets lo dejó bien en claro, el quiere usar winapi puro. Para hacer eso te recomiendo que leas este tutorial de como hacerlo con winapi completo:

http://winapi.conclase.net/curso/index.php

B#

Perdona mi osadía, pero WinForms no es un winapi puro... es parte del framework de .NET.

Además, da igual si usas un framework específico o la api de windows... al final todos los frameworks acaban haciendo uso de la api de windows... lo que sucede es que los frameworks ofrecen muchas facilidades con respecto a la api... que es más bien básica.

x64core

Cita de: Meta en 15 Marzo 2014, 22:56 PM
Win32 ahora, y en el futo...

¿Win64 (por llamarlo de alguna manera) no es remomendable?

En la época de los 16 Bits y 32 bits pasaba algo similar.

Tarde o temprano, los 64 bits será lo que hay y muy poco de 32 bits como ahora se piensa de los 16 bits. ;)

Eso si, requiere por lo menos una década más o casi.

Eso sin contrar que todo será enla nube.

Saludo.

Más bien lo veo util en aplicaciones que realmente tiene un gran impacto en rendimiento; en donde se aprovechan los recursos
del hardware, pero para simples aplicaciones yo lo veo innecesario más de agregar incompatibilidad para SOs de 32-bits. una pequeña cosa
a tomar en consideración es que hay que recordar que los ejecutables para 64-bits son más grandes en tamaño eso es debido a como
se codifican las instrucciones más que todo las direcciones de memoria , la posibilidade de valores inmeadiatos de 64-bits, etc.

BloodSharp

Cita de: eferion en 17 Marzo 2014, 08:34 AM
Perdona mi osadía, pero WinForms no es un winapi puro... es parte del framework de .NET.

Cierto, pero yo no estaba hablando de Windows Forms sino que le estaba dando un link al usuario donde se podían hacer aplicaciones en ventana... Fijate que Meta escribió hacer Windows Form con win32 (que sería winapi) que en todo caso el se confunde con los términos o no sabe que no es lo mismo :P


B#