Просмотр полной версии : Гуи приложения в Visual Studio
1.Как вклинится в обработку оконных сообщений.
2.Какая есть литература? А то нехрина непонятно по каком оно вообще принципу работает :(
Gray_Wolf
05.10.2009, 12:51
Оно?
http://social.msdn.microsoft.com/Forums/ru-RU/architecture/thread/7a989ad6-abd4-42c9-b791-42abde5b7c83
Какая есть литература? А то нехрина непонятно по каком оно вообще принципу работает
В соседнем треде, ака "Начинаем программировать на..." есть )
Оно?
http://social.msdn.microsoft.com/Forums/ru-RU/architecture/thread/7a989ad6-abd4-42c9-b791-42abde5b7c83
Я вообще хз что это.
В соседнем треде, ака "Начинаем программировать на..." есть )
Там есть по С и С++.А мне нужно по конкретной среде.По Visual Studio C++
Щупак "Win32 API"
Читай выше
А мне нужно по конкретной среде.По Visual Studio C++
твою ж мать, читай книгу. особенности не в среде разработки, а в ядре операционной системы. к среде разработки применимо одно различие - надстройка над графической подсистемой ОС. Например для мс - это мфц. Для борланд - это всл. РТФМ кароч, ибо пока не научишься читать тебе никто не бьудет все разжевывать.
твою ж мать, читай книгу. особенности не в среде разработки, а в ядре операционной системы. к среде разработки применимо одно различие - надстройка над графической подсистемой ОС. Например для мс - это мфц. Для борланд - это всл. РТФМ кароч, ибо пока не научишься читать тебе никто не бьудет все разжевывать.
блин да что ж никто непоймет.Мне не нужна литература о ЯЗЫКАХ или ТЕХНОЛОГИЯХ мне нужна литература о КОНКРЕТНОЙ СРЕДЕ РАЗРАБОТКИ
По разработке гуи приложений в MS Visual Studio C++
Потому что:
1.Я незнаю как в ней меняется свойство компонентов
2.Мне неясно как обрабатывать события
И т.д.
gold-goblin
05.10.2009, 19:05
По разработке гуи приложений в MS Visual Studio C++
Потому что:
1.Я незнаю как в ней меняется свойство компонентов
2.Мне неясно как обрабатывать события
И т.д.
Вопрос правильно ставить надо, я подумал ты про инжект пытаешся узнать.....
Есть тема начинаем программировать, берешкнигуи читаешь про gui (есть в любой книге ближе к концу)
омг. ты хоть пробовал читать книжки что тебе посоветовали? Ну свойства менять еще ладно, можно в редакторе ресурсов, нажми View - Resource View. Там нужный тип ресурсов, Дальше View - Properties Window. Все. А по поводу обработки событий - руками их блиа задавать, хоть в блокноте, хоть в чем - главное что руками. А для этого читай, что такое оконная процедура, что такое оконные сообщения, что такое нотифаи элементов управления, что такое основной цикл и прочее прочее прочее.
Windows кодинг он и в Aфрике windows кодинг. От среды\компилятора тут ничего не зависит. Читай любую книжку по программированию для windows. Кстати, они большинство заточены под студию.
Ппц какие все умные,даже и в африке.А ну скажите тогда гении африканские кодеры где тут обработчик оконных сообщений
#pragma once
namespace Keys {
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>
/// Сводка для Form1
///
/// Внимание! При изменении имени этого класса необходимо также изменить
/// свойство имени файла ресурсов ("Resource File Name") для средства компиляции управляемого ресурса,
/// связанного со всеми файлами с расширением .resx, от которых зависит данный класс. В противном случае,
/// конструкторы не смогут правильно работать с локализованными
/// ресурсами, сопоставленными данной форме.
/// </summary>
public ref class Form1 : public System::Windows::Forms::Form
{
public:
Form1(void)
{
InitializeComponent();
//
//TODO: добавьте код конструктора
//
}
protected:
/// <summary>
/// Освободить все используемые ресурсы.
/// </summary>
~Form1()
{
if (components)
{
delete components;
}
}
protected:
private:
/// <summary>
/// Требуется переменная конструктора.
/// </summary>
System::ComponentModel::Container ^components;
#pragma region Windows Form Designer generated code
/// <summary>
/// Обязательный метод для поддержки конструктора - не изменяйте
/// содержимое данного метода при помощи редактора кода.
/// </summary>
void InitializeComponent(void)
{
this->SuspendLayout();
//
// Form1
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->ClientSize = System::Drawing::Size(292, 266);
this->Name = L"Form1";
this->Text = L"Form1";
this->ResumeLayout(false);
}
#pragma endregion
};
}
Где HWND,WPARAM и т.д. Где?
Shaitan-Devil
05.10.2009, 19:41
В Visual Studio есть два основных инструмента для разработки ГУИ: MFC и CRL(C++.NET). ПО MFC много книг, а по CRL есть оффициальная документация на мсдн.
Ппц какие все умные,даже и в африке.А ну скажите тогда гении африканские кодеры где тут обработчик оконных сообщений
Ты для начала разберись что ты хочешь юзать, managed c++ + .net или c++ + mfc wtl, etc
лол, это по твоему C++ ?
Я дотнет часть как бы неинсталил.А других гуевых проектов там нету.
есть там другие гуевые проекты. New Project -> C++ -> Win32 -> Win32 (не Console)
еще раз повторю - бери книги и читай. тыкание по менюшкам не даст никакого результата. Понимать надо, что делаешь. Это не делфи с васиком. Если хочется обойтись менюшками и программированием с помощью мышки - гоу к делфи. Там минимальный порог вхождения, думать особо не требуется, как и читать.
Открываем студию( у меня 6 ).
1 New project -> Win32 Application.
2. File - > New -> Resource Script , правый клик Insert -> Dialog
3.Перетащили кнопку.
4.File -> New -> C++ Source File .
#include<windows.h>
#include"resource.h"
int WINAPI DialogProc( HWND hWnd , UINT msg , WPARAM wp , LPARAM lp )
{
if( msg == WM_COMMAND )
{
if( wp == IDC_BUTTON1 )
{
MessageBox( hWnd , "Pressed" , "Button:" , NULL );
}
}
if( msg == WM_CLOSE )
{
EndDialog( hWnd , 0 );
}
return 0;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
DialogBoxParam( hInstance , MAKEINTRESOURCE(IDD_DIALOG1) , 0 , DialogProc , 0 );
return 0;
}
resource.h сгенирила сама студия на основе элементов которые ты положил на форму в редакторе ресурсов.
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by rs.rc
//
#define IDD_DIALOG1 101
#define IDC_BUTTON1 1000
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 102
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1001
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
http://s50.radikal.ru/i129/0910/6c/8eb461cc31e2.jpg
тыкание по менюшкам не даст никакого результата. Понимать надо, что делаешь. Это не делфи с васиком.
Вот для этого я испрашивал литературу
ЗЫ:у меня нет Resource Script
Ну я же сказал вам , у меня шестая студия , ну думаю в других тоже что-то похожее должно быть( никогда не ставил ничего выше 6 версии)
Вот для этого я испрашивал литературу
ЗЫ:у меня нет Resource Script
И так уважаемый вы плохо смотрели =) Я даже ради интереса поставил 2008 студию благо она бесплатная и так начнем)
1. Запускаем студию.
2. File->New Project -> Win32->WIn32Project
3. Вылетает мастер настроек , жмем next , ставим галку Empty Project , Finish.
4. Слева дерево проекта , правой кнопкой мыши по Resource Files -> Add - > New Item
Выбираем
Resource File.
http://i047.radikal.ru/0910/cc/42771ccf9659.jpg
Дерево ресурсов левее.
http://i037.radikal.ru/0910/37/d02033dbbc58.jpg
Правая кнопка , Add Resource . Выбираешь Dialog.
Переносишь кнопку , Сохраняешь , Добавляешь в проект C++ Source File.
Далее знакомый код :
#include<windows.h>
#include"resource.h"
int WINAPI DialogProc( HWND hWnd , UINT msg , WPARAM wp , LPARAM lp )
{
if( msg == WM_COMMAND )
{
if( wp == IDC_BUTTON1 )
{
MessageBoxA( hWnd , "Pressed" , "Button:" , NULL );
}
}
if( msg == WM_CLOSE )
{
EndDialog( hWnd , 0 );
}
return 0;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
DialogBoxParam( hInstance , MAKEINTRESOURCE(IDD_DIALOG1) , 0 , DialogProc , 0 );
return 0;
}
И все получается =)
http://i028.radikal.ru/0910/fb/b00fa42eb4d4.jpg
В экспресс версии нету редактора ресурсов :( Есть ещё какие то варианты,но не кряки?
тут (http://tinyurl.com/5c2qfm)
http://shop.ixbt.com/catalog/index.php?CID=352
каким местом она бесплатная? Правда есть программа dreamspark. Если студент - тебе по скану студня выдадут бесплатный ключ и на студию и на винду и прочую лажу типа склсервера на год. Правда не со всеми странами работает.
"Правда есть программа dreamspark" этим местом и бесплатная =).
В экспресс версии нету редактора ресурсов Есть ещё какие то варианты,но не кряки?
6 версию ставьте там все есть=)
Если студент - тебе по скану студня выдадут бесплатный ключ и на студию и на винду и прочую лажу типа склсервера на год. Правда не со всеми странами работает.
Защитился этим летом :(
Есть какая то разумная альтернатива борланду с его VCL?
нда=)
Вот кстати на досуге можете почитать http://www.wasm.ru/publist.php?list=1
Есть какая то разумная альтернатива борланду с его VCL?
MFC, WTL, Qt, GTK, wxWidgets, etc.
zeppe1in
08.10.2009, 01:05
В экспресс версии нету редактора ресурсов :( Есть ещё какие то варианты,но не кряки?
возьми любой другой редактор. или создавай все окна с помощью api.
возьми любой другой редактор
Какой?
Hiro Protagonist
08.10.2009, 21:17
блокнот подойдет в том числе. Если нужен визуал то ResEd доставляет =)
zeppe1in
09.10.2009, 01:35
дада. я когда писал про ResEd думал)
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot