powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Обновление клиентской области MDI-формы
25 сообщений из 33, страница 1 из 2
Обновление клиентской области MDI-формы
    #39672925
Фотография Virtual Student
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!
Рисую в клиентской области MDI-формы всякие подсказки для пользователей.
Подскажите, а как правильно перерисовывать эту самую клиентскую область после изменения текста?

Спасибо!
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672934
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Virtual Studentв клиентской области
Нет такой компоненты...

А так: WM_PAINT в гугле.
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672935
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672942
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из моих запасников

=========== заставить перерисовать клиентскую область MDI формы ===========

SetWindowPos(Handle, 0, 0, 0, 0, 0, SWP_FRAMECHANGED or SWP_NOMOVE or SWP_NOZORDER or SWP_NOSIZE);
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672945
Фотография Virtual Student
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanVirtual Studentв клиентской области
Нет такой компоненты...

А так: WM_PAINT в гугле.
Пробовал - не помогает... :(
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672946
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Virtual Studentwadmanпропущено...

Нет такой компоненты...

А так: WM_PAINT в гугле.
Пробовал - не помогает... :(
Грустька и печалька...

Код-то наверное секретный, раз словами описываешь?
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672948
Фотография Virtual Student
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Василий 2Из моих запасников

=========== заставить перерисовать клиентскую область MDI формы ===========

Код: pascal
1.
SetWindowPos(Handle, 0, 0, 0, 0, 0, SWP_FRAMECHANGED or SWP_NOMOVE or SWP_NOZORDER or SWP_NOSIZE);


Чего-то и сие не помогло. :(
Видимо я где-то сообщения неправильно перехватываю. Буду разбираться.

Всем спасибо за внимание и содействие!
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672949
Фотография Virtual Student
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanVirtual Studentпропущено...

Пробовал - не помогает... :(
Грустька и печалька...

Код-то наверное секретный, раз словами описываешь?
Да не особо секретный. Большой просто...
Мне бы такое лень читать было.
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672957
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: pascal
1.
2.
3.
4.
5.
6.
7.
const
  RDW_REDRAWALL = RDW_FRAME
    or RDW_INVALIDATE
    or RDW_NOINTERNALPAINT
    or RDW_ALLCHILDREN;

RedrawWindow(YourMDIParentForm.ClientHandle, nil, 0, RDW_REDRAWALL);

?
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672959
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если не поможет, попробуй убрать RDW_NOINTERNALPAINT
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39672966
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Virtual StudentВасилий 2Из моих запасников

=========== заставить перерисовать клиентскую область MDI формы ===========

Код: pascal
1.
SetWindowPos(Handle, 0, 0, 0, 0, 0, SWP_FRAMECHANGED or SWP_NOMOVE or SWP_NOZORDER or SWP_NOSIZE);


Чего-то и сие не помогло. :(
Видимо я где-то сообщения неправильно перехватываю. Буду разбираться.

Всем спасибо за внимание и содействие!
Просто кинь кнопку и повесь на нее этот код, для проверки. У меня работал
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673068
Фотография LocksmithPC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"в клиентской области MDI-формы" и всё таки, это где?!
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673091
Фотография LocksmithPC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так что ли?
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673220
Фотография Virtual Student
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LocksmithPCТак что ли?
Да.
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673443
зонд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как выводите? Как пытаетесь обновлять?
Virtual StudentДа не особо секретный. Большой просто...В таких случаях создают пустой проект и отдельно повторяют проблему.
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673516
Фотография LocksmithPC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Virtual Student, тупо сделал так:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
      Left := Left - 1;
      Top := Top - 1;
      Width := Width + 1;
      Height := Height + 1;

      Application.ProcessMessages;

      Left := Left + 1;
      Top := Top + 1;
      Width := Width - 1;
      Height := Height - 1;

      Application.ProcessMessages;
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673574
Фотография Virtual Student
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LocksmithPCVirtual Student, тупо сделал так:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
      Left := Left - 1;
      Top := Top - 1;
      Width := Width + 1;
      Height := Height + 1;

      Application.ProcessMessages;

      Left := Left + 1;
      Top := Top + 1;
      Width := Width - 1;
      Height := Height - 1;

      Application.ProcessMessages;


Оно работает.
Но я вас умоляю, - это же не кошерно!..
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673636
Фотография LocksmithPC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Virtual Student, чо уж теперь :(
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673714
зонд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вы так и не показали как вы выводите ваш текст... "Я тут кое-где и кое-как вывожу текст, как мне вызвать перерисовку, что-то ничё не срабатывает?" Как же вам помогать?
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673731
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Virtual StudentРисую в клиентской области MDI-формы всякие подсказки для пользователей.Изначально, говнорешение. Подсказки должны быть в хинтах, скринтипах, тултипах или как раньше уже подсказали в статусбаре. Тебе какое окно надо перерисовать MDIForm или MDIChild? Если первое - используй ClientHandle для вызовов WinApi, если второе - то просто Repaint
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673739
Фотография LocksmithPC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_nigger, Через ClientHandle & WinAPI как?
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673749
Фотография Virtual Student
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_niggerVirtual StudentРисую в клиентской области MDI-формы всякие подсказки для пользователей.Изначально, говнорешение. Подсказки должны быть в хинтах, скринтипах, тултипах или как раньше уже подсказали в статусбаре. Тебе какое окно надо перерисовать MDIForm или MDIChild? Если первое - используй ClientHandle для вызовов WinApi, если второе - то просто Repaint
Дяденька (или тетенька), то, что должно быть абсолютно не соответствует пожеланиям пользователей, к сожалению... Я и сам бы рад, если бы они читали подсказки в "хинтах, скринтипах, тултипах", но к сожалению, у меня таки пользователи, что видят лишь то, что нарисовано "грубо" и жирным шрифтом. :)
P.S.: Пишу на Delphi приложения (и продаю их) аж с 2000 года.
P.S.S.: К сожалению, какие-то "преподаватели" впаривают студентам, что Delphi годиться только для обучения...
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673760
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LocksmithPCwhite_nigger, Через ClientHandle & WinAPI как?Да как хочешь. Хочешь ручками, хочешь - вешаешь свой WndProc и отрабатываешь WM_Paint (последнее использовал в нашей риббон форме)
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673773
Фотография LocksmithPC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_nigger, вопрос почему не срабатывает стандартный FormPaint в котором идет отрисовка. Update, Refresh, InvalidateRect, и даже прямой вызов FormPaint эффекта не дают. А изменение размера формы отрисовывает на ура.
...
Рейтинг: 0 / 0
Обновление клиентской области MDI-формы
    #39673811
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LocksmithPCwhite_nigger, вопрос почему не срабатывает стандартный FormPaint в котором идет отрисовка. Update, Refresh, InvalidateRect, и даже прямой вызов FormPaint эффекта не дают. А изменение размера формы отрисовывает на ура.

SPY++ тебе в помощь
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Обновление клиентской области MDI-формы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]