Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с ресурсами (Dialog, Menu, Accelerator...) 
:(
    Опции темы
-Сергей-
Дата 15.6.2004, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 224
Регистрация: 2.8.2003
Где: Россия

Репутация: нет
Всего: 1



Решил начать программировать на чистом API, не всю жизнь же с VCL работать.
Может посоветуете как обращаться к ресурсам этого типа, принимать от них значения, заменять значения, обрабатывать нажатие кнопок и т. д.
Или знаете, где достать документацию по этому вопросу, или есть у самих?

Это сообщение отредактировал(а) -Сергей- - 15.6.2004, 19:23
--------------------
Для утвердительного ответа достаточно лишь одного слова - "да". Все прочие слова придуманы, чтобы сказать "нет".
PM MAIL WWW ICQ MSN   Вверх
Chuck
Дата 15.6.2004, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Сушня
**


Профиль
Группа: Эксперт
Сообщений: 442
Регистрация: 12.12.2003
Где: Узбекистан, Ташке нт

Репутация: 1
Всего: 9



Если хочешь могу дать справочник по АПИ функциям, на мыло!!! Не все, но большинство там есть!!!
Стучись 199786920 (ася)
PM MAIL WWW GTalk   Вверх
Alex
Дата 15.6.2004, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162





--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
youri
Дата 15.6.2004, 23:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 17.4.2004

Репутация: нет
Всего: 16



alex-co, я попытался на основе исходника, приведенного на указанной тобой ссылке создать программу, которая по нажатию кнопки отображает диалоговое окно. Для этого я создал res-файл, в котором создал два диалоговых окна с ID 500 и 501, и классом 'WndClass121328546859821321'. Подключил этот файл ресурсов к моему модулю
Код
{$r 1.res}

Обработчик события OnClick кнопки
Код
var
HDialog: HWND;
wc: TWndClassEx;
begin
// создаю класс окна
wc.cbSize:=sizeof(wc);
wc.style:=CS_HREDRAW or CS_VREDRAW;
wc.lpfnWndProc:=@WindowProc_;
wc.cbClsExtra:=0;
wc.cbWndExtra:=DLGWINDOWEXTRA;
wc.hInstance:=HInstance;
wc.hIcon:=LoadIcon(0,IDI_APPLICATION);
wc.hCursor:=LoadCursor(0,IDC_ARROW);
wc.hbrBackground:=COLOR_BTNFACE+1;
wc.lpszMenuName:=nil;
wc.lpszClassName:='WndClass121328546859821321';
RegisterClassEx(wc);

// создаю диалоговое окно
HDialog:=CreateDialog(hInstance, '#500', Handle, @WindowProc_);

// пытаюсь его отобразить
ShowWindow(HDialog, SW_MAXIMIZE); // не получается
end;

Процедура диалогового окна:
Код

function WindowProc_(wnd:HWND; Msg : Integer; Wparam:Wparam; Lparam:Lparam):lresult; stdcall;
var nCode, ctrlID : word;
 lb, i : THandle;
Begin
case msg of
WM_COMMAND:
begin
 nCode:=hiWord(wParam);
 ctrlID:=loWord(wParam);
 case ctrlID of
 IDCANCEL:
 begin
  DestroyWindow(wnd);
 end;
 end;
end;
WM_DESTROY:
begin
 postquitmessage(0);
 Result:=0; exit;
end;
else
 Result:=DefWindowProc(wnd,msg,wparam,lparam);
end;
end;

А диалоговое окно не отображается.
PM   Вверх
Alex
Дата 16.6.2004, 07:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



Скинь весь проект


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Alex
Дата 16.6.2004, 07:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



лови

Присоединённый файл ( Кол-во скачиваний: 14 )
Присоединённый файл  dialog.zip


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
-Сергей-
Дата 16.6.2004, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 224
Регистрация: 2.8.2003
Где: Россия

Репутация: нет
Всего: 1



Chuck жди в асе.
alex-co спасибо за линк и проект!

--------------------
Для утвердительного ответа достаточно лишь одного слова - "да". Все прочие слова придуманы, чтобы сказать "нет".
PM MAIL WWW ICQ MSN   Вверх
Albinos_x
Дата 16.6.2004, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



Вот небольшая справка по АПИ

тут

Есть ещё отсканированная книга по АПИ, с примерами, но занимают картинки 119 мешков (мой трафик не позволяет качать такие размеры) , возиться с переводом в текстовый формат неохота.

Если только встретиться, то могу подогнать диск

Это сообщение отредактировал(а) Albinos_x - 16.6.2004, 18:08


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Chuck
Дата 16.6.2004, 18:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Сушня
**


Профиль
Группа: Эксперт
Сообщений: 442
Регистрация: 12.12.2003
Где: Узбекистан, Ташке нт

Репутация: 1
Всего: 9



Вот, то что было со мной smile.gifwinapi.zip
Есть справочник дома, но его позже ок???
PM MAIL WWW GTalk   Вверх
Albinos_x
Дата 16.6.2004, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



Chuck
Много примеров, но вместо пояснений какие-то иероглифы


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
youri
Дата 17.6.2004, 05:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 17.4.2004

Репутация: нет
Всего: 16



Albinos_x, не знаю откуда у тебя взялись иероглифы, может кодировка неправильно определилась (бывает иногда)
alex-co, спасибо за проект. У меня были проблемы с res-файлом - подключил твой res-файл и программа заработала.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0543 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.