· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.WIN32 —› SetWindowLong не действует

Посл.отвђт Сообщенiе


Дата: Мар 12, 2004 23:20:52

Хочу изменить стиль например EDITa в диалоге :

invoke SetWindowLong,hEdit,GWL_STYLE,50001203h

Но ничего не изменяеться . MSDN предлагает после SetWindowLong вызывать SetWindowPos . Пробую :

invoke SetWindowPos,hDlg,HWND_TOPMOST,20,20,300,300,SWP_FRAMECHANGED

Никакого результата , вернее окно позицию меняет , но стиль EDITа нет .

С ReBar-ом проходит на ура и без SetWindowPos .
Колитесь :)


Дата: Мар 12, 2004 23:32:46

SetWindowLong может менять только некоторые из стильев, а некоторые только через DestroyWindow/CreateWindowEx.

Sorry - масдай. :)


Дата: Мар 12, 2004 23:43:53

Ну что жжж ...

Тогда придумаю другие украшательства .
API Функций ещё много :)


Дата: Мар 13, 2004 04:04:11

Блин это я не внимательный был .
Вот такая строка мне помогла .

invoke SetWindowPos,hEdit,0,0,0,0,0,SWP_NOMOVE + SWP_NOSIZE + SWP_NOZORDER + SWP_NOACTIVATE + SWP_DRAWFRAME

WinSpy кульная вещь , меняет стили "на ходу" .
Можна быстро подобрать требуемый .
И с исходиками (с++) .


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.071