Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   посоветуйте ф-цию WinApi (http://forum.oszone.net/showthread.php?t=30869)

vasketsov 12-04-2002 21:36 210479

посоветуйте ф-цию WinApi
чтоб выводила простое окошко, с двумя кнопками типа Yes No или OK Cancel или пофигу с каким текстом, главное чтобы в выводимом окошечке было поле для ввода строки текста.

Типа InputQuery в дельфи или prompt в javascript.

Надо от юзера получить строку текста, а самому формочку писать ломает (а может в dll-ях каких стандартных сей ресурс есть?).

Можно из Nt Native Api, те подержка Win9x не обязательна.
Обязательно, чтоб стандартное апи юзалось, но не обязательно документированное. То есть, чтоб на любой стандартной НТ работало, в минимально допустимой стандартной конфигурации.

Вообще, есть такая ф-ция?
А то нигде такую не нашел.
Даже по System32 полным поиском по строке Prompt ничего нужного не вылазит.

ruslandh 13-04-2002 05:35 210480

Насколько я помню (давно не брал ружья я в руки) - это MessageBox

ivank 13-04-2002 09:24 210481

ruslandh
MesssgeBox это просто окошко с кнопочами, без поля ввода.

vasketsov
Я пока только нашёл подобную функцию для VB, чён-то неполучилось узнать, откуда она импортируется... А так, ты же вроде бы на Дельфи (в основном) пишешь, там сделать такую формочку -- пара минут.

Есть ещё один вариант (бредовый) -- поднимаешь Active Scripting и через него выполняешь кусок кода на VB/JS :) Это гораздо сложнее чем самому формочку делать, зато когда вся программа на COM завязана (+написан класс для работы с ActiveScriptingом, но это совсем несложно), то занимает пару строчек.

Добавлено:

vasketsov
На счёт Дельфи прогнал, чуть-чуть внимательнее прочитав твой пост, понял, что нужно именно WinApi, тем более что в Delphi такая весчь есть.

vasketsov 13-04-2002 10:36 210482

ivank
InputQuery сама формочку делает.
Прога у меня на чистом апи, даже RTL я беру из NTDLL.DLL
Предполагается ее работа только на платформах NT.
Так что всякая левота типа кома и скриптинга отпадает.
Да и ВБ скорее всего сам рисует окошко.

Так что пока ответ не найден.

ivank 13-04-2002 15:06 210483

vasketsov
Цитата:

Да и ВБ скорее всего сам рисует окошко.
Нет, т.е. да. Но он берёт её из своей DLLки (msvb60.dll). Можно было её оттуда импортировать, только она недокументированная :( (rtcInputBox называется)

vasketsov 13-04-2002 15:21 210484

ivank
да не охота VB тащить все-таки.

ruslandh 14-04-2002 00:59 210485

vasketsov
Извини невнимательго прочел про поле ввода



ruslandh 17-04-2002 07:22 210486

Я немного отдалился от Win программирования, но разве нельзя создать заданное окно в виде ресерса, а потом загрузить его средствами WinApi ?

Добавлено:

Я немного отдалился от Win программирования, но разве нельзя создать заданное окно в виде ресерса, а потом загрузить его средствами WinApi ?

ivank 17-04-2002 09:40 210487

ruslandh
Дык это ж всё равно надо некоторый код писать, скорее всего он так и сделал. А так одной строчкой всё получилось бы.

vasketsov 17-04-2002 11:27 210488

ruslandh
можно. но лениво одинаковые ресурсы плодить в системе.

ivank
да я еще никак не сделал.

видимо, буду ресурс рисовать.


Время: 01:39.

Время: 01:39.
© OSzone.net 2001-