Сервисное обслуживание
- 1 ответ
- 0 вопросов
1
Вклад в тег
CreateWindow(...) // создаем окно. Оно вешает в безконечный цикл (или ждуший) свои области экрана и функции.
while ( GetMessage( MSG)!=WM_QUIT ){ MSG -> WinProc(); }
DestroyWindow();
WinProc(MSG){// это тело вызывается когда чтото присылается окну.
switch( MSG.code){ //что за сообшение
case КНОПКА_НАЖАТА:
....
switch ( key){//какая кнопка нажата?
case LEFT: g_siPosX++; g_nScreenChanged=1; break; //вправо, и перерисовать экран.
}
break;
case таймер: if (g_nScreenChanged) SendMessage(..., WM_PAINT); break; //анимация не спит.
case WM_PAINT: Рисую окно. break; //рисовать все и сбросить флаг что надо перерисовать
}
WaitForIOEvent(code); <i> или любая друга ждушая функция. Хоть прерывание. Часто с таймером чтоб не висеть. </i>
switch(code){
case МОНИТОР_ВКЛЮЧОН: SendEvent(GRAPHICS_PAINT_ALL); ...
}
lock_...(условная_переменная, мютекс).
while (ЧтоСлучилось==0){
r=wait...( условная_переменная,мютекс).
if (r==TIME_OUT){ if (*pQuit) break; }
}
unlock(...);
switch( ЧтоСлучилось ){
case ОБНОВИТЬ СЦЕНУ: //событие надо обновить сцену.
РИСУЕМ_В_БУФФЕР. //может тоже быть отдельным потоком, чтоб окно быстро риагировало на события.
// тогда запускаем рендеринг и ждем событие что готово.
PushPin(SCREEN_RESET,1); //прерывание - сброс экрана.
PushPin(SCREEN_RESET,0);
SendBufferToSPI(НАШ БУФФЕР);
break;
}
10 PRINT 2+2
в [000][010][130 например][2][+][2][END]
*Кремний
**Поликристал <--- ссылка на список страниц.
***импортный <- тоже ссылка...
***очистка
**Кусковой
**Техинческий
*Германий
("кремний кусковой")and(ГОСТ)
[x]Точное совпадение
настройки: [х]-Учет регистра. [2]-растояние между словами. <more>
[x]:[Кремний кусковой]
[ ][ <null> ]
[ ]Точное совпадение
[x]Должны быть в документе слова (фразы) на растоянии от искомого
настройки: [х]-Учет регистра. [4]-слов. [any]-символов. <more - спойлер>
[x][в наличии]
[ ][ null ]
[ ]Должны быть в документе слова на растоянии от искомого.
[ ]Дата изменения документа.
условия_поиска {
uchar ucType; <-- enum { .. }
параметры_для_словия xOpt;
char* pszText;
};