Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / C/C++

Выпуск № 115
от 29.05.2005, 14:30

Администратор:Калашников О.А.
В номере:Вопросов: 2, Ответов: 2


Вопрос № 21250: Здравствуйте, уважаемые эксперты. Никак не могу найти описание, как сделать простейший файловый менеджер с возможностью копировать, удалять файлы. Что-то вроде виндового проводника. Большие, маленькие значки, список, таблица. В исходниках на разн...
Вопрос № 21258: Уважаемые! Возник вопрос. Есть программа (консольная или Windows-приложение), которая запускает другое КОНСОЛЬНОЕ приложение. Вопрос: Как из "родительской" программы перехватить вывод "дочернего" приложения(будь то сообщение о...

Вопрос № 21250
Здравствуйте, уважаемые эксперты.
Никак не могу найти описание, как сделать простейший файловый менеджер с возможностью копировать, удалять файлы. Что-то вроде виндового проводника. Большие, маленькие значки, список, таблица. В исходниках на разных сайтах много всего, но всё ооочень накручено. А простого: левая панель с деревом, правая панель с файлами - нет. В крайнем случае, можно без дерева.
Помогите, умоляю! Ведь делали «в молодости» такое. Знаете, где искать.
Огромное вам спасибо!
Отправлен: 24.05.2005, 00:27
Вопрос задал: Ermine (статус: Посетитель)
Всего ответов отправлено: 1

Отвечает: Jadd
Здравствуйте, Ermine!
Я лично не писал файловых менеджеров, как-то не интересно было (в линухе интерпретатор интересней было написать ;) ). Пару идей подкину. Значит так. Для начала идешь к учебникам по Visual C++ (надеюсь ты на нем пишешь) и усердно читаешь про конструкцию Документ-Представление. Дальше читаешь про класс CSplitterWnd. Этот сплиттер внд позволяет поделить главное окно приложения, да и любое окно, на столько кусков, сколько пожелаешь (главное меру соблюдать). Что в итоге. У тебя из одного CView получается два (к примеру): левый и правый. Это я так, упрощенно говорю. Дальше, грузишь в каждую половинку свои вьюхи. Надеюсь, ты понимаешь, что на их месте мог бы быть ты...эээ....твои CTreeView и CListView. А дальше все просто. Загрузить дерево папок во время инициализации. Затем отобразить в ListView папки и файлы текущей папки. Ну, и дальше - дело твоей фантазии. Пиши, коли чего не ясно. Удачи.
Ответ отправил: Jadd (статус: 4-ый класс)
Отправлен: 24.05.2005, 09:40
Оценка за ответ: 4
Комментарий оценки:
Канечно, не ясно! :) Вот этот самый код, который нужно запихать в "свои вьюхи", я и не могу найти. Если с деревом всё более или менее (примеров кода много), то со списком - не очень. Ладно. Будем искать ещё...


Вопрос № 21258
Уважаемые! Возник вопрос. Есть программа (консольная или Windows-приложение), которая запускает другое КОНСОЛЬНОЕ приложение.
Вопрос: Как из "родительской" программы перехватить вывод "дочернего" приложения(будь то сообщение об ошибке или обычный вывод)???
Отправлен: 24.05.2005, 04:56
Вопрос задал: Budri (статус: Посетитель)
Всего ответов отправлено: 1

Отвечает: Jadd
Здравствуйте, Budri!
Помнится я как-то писал такое дело. Только там речь идет не о перехвате, а о перенаправлении ввода-вывода. Короче долго разглогольствовать не буду, а подкину идейку, которая работает на все 100. Вся идея крутится вокруг пайпов (Pipe). Суть в том, что мы создаем пайп, в который передаем хэндлы потоков ввода-вывода дочернего процесса и, все, что остается - читать из этих пайпов. Подробнее читай в msdn, например, здесь http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/creating_a_child_process_with_redirected_input_and_output.asp . Если этого мало или не поймешь, пиши, я пришлю пример с подробным описанием. Удачи
Ответ отправил: Jadd (статус: 4-ый класс)
Отправлен: 24.05.2005, 09:22


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Яндекс


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.cplus
Отписаться
Вспомнить пароль

В избранное