Форум: Форум C++Разное
Новые темы: 00
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Диалоговые окна
 
 автор: alex19921992   (11.02.2007 в 07:21)   письмо автору
 
 

Как делать диалоговые окна, не подскажете? Вот надо мне сделать окно для ввода имени файла, например, только поле для ввода и 2 кнопки: ок и отмена. Как сделать?

  Ответить  
 
 автор: Фитч   (11.02.2007 в 11:19)   письмо автору
 
   для: alex19921992   (11.02.2007 в 07:21)
 

В чем делаете (в какой среде?)
Вот ссылка, ближе к концу смотрите, там много написано
http://dims.karelia.ru/win32/

  Ответить  
 
 автор: alex19921992   (11.02.2007 в 12:27)   письмо автору
 
   для: Фитч   (11.02.2007 в 11:19)
 

На чистом АПИ в VC++ 6.0

  Ответить  
 
 автор: cheops   (11.02.2007 в 14:24)   письмо автору
11.1 Кб
 
   для: alex19921992   (11.02.2007 в 07:21)
 

Примерно так, как это представлено в проекте, во вложении

PS Вам модальное окно нужно или обычное?

  Ответить  
 
 автор: alex19921992   (13.02.2007 в 05:29)   письмо автору
 
   для: cheops   (11.02.2007 в 14:24)
 

Надо ээээ.... модальное... ну в смысле основная форма запрещается, пока работает диалог. И можно обойтись без ресурсов???????

  Ответить  
 
 автор: cheops   (13.02.2007 в 13:36)   письмо автору
 
   для: alex19921992   (13.02.2007 в 05:29)
 

Хм... а чем ресурс не нравится - это чистый Windows API :)))

  Ответить  
 
 автор: alex19921992   (13.02.2007 в 14:22)   письмо автору
 
   для: cheops   (13.02.2007 в 13:36)
 

Я ресурсы вообще не понимаю. Просто хочется чтоб прога умещалась в одном файле и был один эксешник.... пожалуйста, скажите, как сделать без ресурсов, ведь главное окно как-то делается без них!

  Ответить  
 
 автор: cheops   (13.02.2007 в 16:33)   письмо автору
 
   для: alex19921992   (13.02.2007 в 14:22)
 

Сейчас убегаю - постараюсь сегодня выложить вариант без ресурсов ближе к ночи.

  Ответить  
 
 автор: alex19921992   (16.02.2007 в 09:39)   письмо автору
 
   для: cheops   (13.02.2007 в 16:33)
 

Выложи пожалуйста!

  Ответить  
 
 автор: cheops   (16.02.2007 в 13:42)   письмо автору
 
   для: alex19921992   (16.02.2007 в 09:39)
 

Чего-то повозился - ни фига у меня без ресурса форма не вылепливается - так до сих пор и не построил :))) Оказывается такое тяжкое занятие - вы уверены, что хотите строить диалоговые формы без ресурсов - с ресурсами на порядок проще.

  Ответить  
 
 автор: alex19921992   (16.02.2007 в 16:40)   письмо автору
 
   для: cheops   (16.02.2007 в 13:42)
 

Но я не понимаю как с ними работать! Может кто-нить по-человечески скажет?

  Ответить  
 
 автор: Фитч   (16.02.2007 в 17:43)   письмо автору
 
   для: alex19921992   (16.02.2007 в 16:40)
 

Работать с ресурсами по-моему можно в VC++ в визуальном виде.
Затем пользуйтесь ф-циями CreateDialog и тп. (см. в MSDN)

  Ответить  
 
 автор: cheops   (16.02.2007 в 19:46)   письмо автору
 
   для: Фитч   (16.02.2007 в 17:43)
 

Ресурсы можно создавать и вручную (это обычный текстовый файл), пример работы с ресурсом в котором хранится диалоговая форма представленн в архиве, который прикреплён к теме от 11.02.2007 в 14:24 http://www.softtime.ru/cpp/files/171-20070211142443.rar.

  Ответить  
 
 автор: alex19921992   (17.02.2007 в 11:24)   письмо автору
 
   для: Фитч   (16.02.2007 в 17:43)
 

Да нет у меня МЗДН! Люди добрые! Помогите! Так как же работать с ресурсами?

  Ответить  
 
 автор: cheops   (17.02.2007 в 14:13)   письмо автору
 
   для: alex19921992   (17.02.2007 в 11:24)
 

В ресурс следует поместить примерно такой код
#include <windows.h>
#include "fomr.h"

IDD_DIALOG DIALOGEX 0, 0, 118, 48
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | 
    WS_SYSMENU
CAPTION "Dialog"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "OK",IDOK,7,27,50,14
    PUSHBUTTON      "Cancel",IDCANCEL,60,27,50,14
    EDITTEXT        IDC_EDIT,7,7,104,14,ES_AUTOHSCROLL
END

Только потребуется определить константу IDC_EDIT в fomr.h
#define IDC_EDIT      31

DEFPUSHBUTTON - кнопка OK
PUSHBUTTON - кнопка Cancel
EDITTEXT - текстовая область

  Ответить  
 
 автор: alex19921992   (17.02.2007 в 16:12)   письмо автору
 
   для: cheops   (17.02.2007 в 14:13)
 

А че за константа? Может можно прям в код вставить число 31? И как визуально ресурс редактировать? А в главной программе как его вызывать?
З.Ы. А там есть стандартные save/load/print - диалоги?

  Ответить  
 
 автор: cheops   (17.02.2007 в 22:16)   письмо автору
 
   для: alex19921992   (17.02.2007 в 16:12)
 

>Может можно прям в код вставить число 31?
Можно, только уж везде 31 вставляйте.

>И как визуально ресурс редактировать?
Откройте его в Visual Studio - там специальный визуальный редактор, который позволяет его редактировать.

  Ответить  
 
 автор: alex19921992   (18.02.2007 в 06:20)   письмо автору
 
   для: cheops   (17.02.2007 в 22:16)
 

А число 31, это что? Вроде как уникальный номер окна, да?

  Ответить  
 
 автор: cheops   (18.02.2007 в 13:13)   письмо автору
 
   для: alex19921992   (18.02.2007 в 06:20)
 

Да, это уникальный номер, который не должен совпадать с другими.

  Ответить  
 
 автор: ReTnom   (23.07.2007 в 21:15)
 
   для: alex19921992   (11.02.2007 в 07:21)
 

А вот здесь увидел только еа чистом API, а почему никто не предложил MFC?
Разве создание диалоговых окон в MFC не легче чем в API?
Объясните пожалуйсто, а то я не совсем понимаю.

  Ответить  
 
 автор: cheops   (24.07.2007 в 10:47)   письмо автору
 
   для: ReTnom   (23.07.2007 в 21:15)
 

Проще... дело в том, что alex19921992 создаёт программу на чистом API (это обсуждалось в другой его теме - отсюда только API-реализации).

  Ответить  
 
 автор: alex19921992   (26.07.2007 в 15:38)   письмо автору
 
   для: cheops   (24.07.2007 в 10:47)
 

+1
создавал)))

сейчас изучаю direct3d под c#

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования