crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Аналог MFC::CEvent и MFC::CSingleLock есть ли в Qt ?, Есть-ли Qt-подобный объект?
niXman
  опции профиля:
сообщение 29.7.2008, 1:41
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 169
Регистрация: 18.6.2008
Пользователь №: 204

Спасибо сказали: 1 раз(а)




Репутация:   0  


Нужно портировать MFC код под Linux.
В коде:
    CEvent KillTimer;
    CSingleLock* TimerLock;

Чем заменить эти объекты?

Сообщение отредактировал niXman - 29.7.2008, 1:43
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 29.7.2008, 1:57
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9666
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Надо знатока MFC.
вместо CEvent может QEvent подойдет?

а что за класс CSingleLock?
(если для работы с потоками, то смотри "Классы работы с потоками")
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
niXman
  опции профиля:
сообщение 29.7.2008, 2:51
Сообщение #3


Участник
**

Группа: Участник
Сообщений: 169
Регистрация: 18.6.2008
Пользователь №: 204

Спасибо сказали: 1 раз(а)




Репутация:   0  


Litkevich Yuriy, А я плоховато знаю MFC, а точнее не знаю вообще!!!
Так что, что такое CEvent, CSingleLock я могу только догадываться.
CEvent - Я думаю аналог QEvent. Вот только у QEvent нет метода PulseEvent().
CSingleLock - Я думаю что-то вроди QMutex.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Tonal
  опции профиля:
сообщение 29.7.2008, 9:15
Сообщение #4


Активный участник
***

Группа: Участник
Сообщений: 452
Регистрация: 6.12.2007
Из: Новосибирск
Пользователь №: 34

Спасибо сказали: 69 раз(а)




Репутация:   17  


Вот здесь описывается что это такое.
Поточные классы MFC отличаются от Qt-ёвых, т.к. они всего лишь небольшая надстройка над WinApi.
Так что механически перенести не получится, то всегда можно построить что-нибудь подобное.
Например CEvent эмулируется QWaitCondition видимо.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
niXman
  опции профиля:
сообщение 29.7.2008, 9:41
Сообщение #5


Участник
**

Группа: Участник
Сообщений: 169
Регистрация: 18.6.2008
Пользователь №: 204

Спасибо сказали: 1 раз(а)




Репутация:   0  


Цитата(Tonal @ 29.7.2008, 10:15) *
Так что механически перенести не получится

А это как - Механически?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Tonal
  опции профиля:
сообщение 29.7.2008, 10:25
Сообщение #6


Активный участник
***

Группа: Участник
Сообщений: 452
Регистрация: 6.12.2007
Из: Новосибирск
Пользователь №: 34

Спасибо сказали: 69 раз(а)




Репутация:   17  


Механически - значит не меняя алгоритмы а просто заменяя имена классов/методов/членов. :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
niXman
  опции профиля:
сообщение 29.7.2008, 10:53
Сообщение #7


Участник
**

Группа: Участник
Сообщений: 169
Регистрация: 18.6.2008
Пользователь №: 204

Спасибо сказали: 1 раз(а)




Репутация:   0  


Tonal - Я и не надеялся. Хотя...хорошо бы...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
void*
  опции профиля:
сообщение 29.7.2008, 18:52
Сообщение #8


Программист-самоучка
***

Группа: Участник
Сообщений: 429
Регистрация: 4.6.2008
Пользователь №: 193

Спасибо сказали: 28 раз(а)




Репутация:   3  


niXman, судя по тому что я понял из мсдн, оба этих класса для работы с потоками
было бы неплохо если бы ты привел фрагмент кода на MFC, может расшифровали бы и перевели на Qt :)

Сообщение отредактировал void* - 29.7.2008, 18:53
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 29.7.2008, 19:12
Сообщение #9


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Не уверен, что это штука может помочь, но все-таки стоит посмотреть:
http://trolltech.com/products/qt/addons/ca...s/qtwinmigrate/

Вдруг есть аккуратный и безобидный способ.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.1.2021, 22:25