Локальная переменная в WM_PAINT

Тема в разделе "WASM.BEGINNERS", создана пользователем ATX, 18 фев 2008.

  1. ATX

    ATX New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    145
    Здрасьте всем!

    Создаю диалоговое окно invoke DialogBoxParam, hInstance, DLG_Window1, NULL,offset ProcWindow1, InParam
    в InParam - передаю числовое значение окну, в процедуре окна WM_INITDIALOG сохраняю это значение в локольной переменной.
    Проблема в том, что процедуре WM_PAINT значение локальной переменной другое.
    Как мне передать входное значение в процедуру WM_PAINT?
     
  2. AsmGuru62

    AsmGuru62 Member

    Публикаций:
    0
    Регистрация:
    12 сен 2002
    Сообщения:
    689
    Адрес:
    Toronto
    1. В ответ на WM_INITDIALOG:
    Код (Text):
    1. invoke SetWindowLong, hDlg, DWL_USER, value_InParam
    2. В ответ на WM_PAINT:
    Код (Text):
    1. invoke GetWindowLong, hDlg, DWL_USER
    2. mov LocalVariable, eax
     
  3. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    На то переменная и локальная. Используй другой вариант (статическую, глобальную, SetProp/GetProp, #2, etc.).
     
  4. ATX

    ATX New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    145
    AsmGuru62 спасибо!

    А проще передать параметр никак?

    Сверхцитирование не приветствуется
     
  5. AsmGuru62

    AsmGuru62 Member

    Публикаций:
    0
    Регистрация:
    12 сен 2002
    Сообщения:
    689
    Адрес:
    Toronto
    А в глобальную переменную его! Но тогда не получится создать несколько HWNDs твоего окна.
     
  6. ATX

    ATX New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    145
    К сожалению эта процедура будет работать как мультитредовая :-(
     
  7. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
  8. ATX

    ATX New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    145
    Мой респект AsmGuru62, это действительно самое простое и граматное решение!!!

    Избыточное цитирование и выделение сообщения!
     
  9. Xerx

    Xerx Алексей

    Публикаций:
    0
    Регистрация:
    17 фев 2005
    Сообщения:
    528
    Адрес:
    Russia
    ATX
    Ну вот, а сначала упирался :derisive: