Home
Top.Mail.Ru Yandeks.Metrika
Forum: "Main";
Current archive: 2002.01.08;
Download: [xml.tar.bz2];

Down

Появление формы Find similar branches


Leviathan   (2001-12-13 23:05) [0]

Можно ли заставить форму сначала обрисоваться, а потом появиться? А то картинка моргает, пробовал BitBlt - не помогло.



Builder   (2001-12-14 00:43) [1]

Интересно, что ты такое рисуешь, что BitBlt не помогло?
Может просто ты это очень часто рисуешь?



KilkennyCat   (2001-12-14 02:50) [2]

А можно конкретнее? Мне, например, однажды нужно было сделать красивое появление формы (выезд с бока экрана). Я тогда столкнулся с проблемой прорисовки компонент на форме (они моргали). Выход был простой: создается битмап с внешним видом формы, он вылетает как угодно, не моргая, хоть крутясь по трем осям, а потом, в финише движения, появляется под ним неактивная форма, битмар уничтожается, форма активизируется.



Leviathan   (2001-12-14 17:38) [3]

Рисую я .jpg картинку, размером примерно с дельфовскую заставку, только один раз. В OnShow формы я использую BitBlt с имаджа на канвас формы. Улучшение есть, но слабенькое, может надо делать это не в OnShow?



Polevi   (2001-12-14 17:57) [4]

Onpaint
WM_ERASEBKGND



Leviathan   (2001-12-14 20:02) [5]

Thank you all for the help!

Polevi:
Извини, если торможу. Этот параметр нужно передать как последний параметр BitBln? Если да, то это ничего не дало :-(



Leviathan   (2001-12-14 20:14) [6]

Упс... ошибся, забыл имедж спрятать, битблт вообще не работает. Что не так?
BitBlt(SplashForm.Canvas.Handle, 0, 0, Image1.Width,
Image1.Height, Image1.Canvas.Handle, 0, 0, 0);



KilkennyCat   (2001-12-15 00:50) [7]

Так для чего это нужно? чтобы заставку сделать?



Leviathan   (2001-12-16 16:35) [8]

Почти. Экран обновления. На нем заставка и прогрессбар.



KilkennyCat   (2001-12-17 01:35) [9]

И моргание происходит при обновлении прогрессбара, что ли?



Polevi   (2001-12-17 08:42) [10]

Leviathan ©
1. BitBlt надо вызывать в он Paint
2. Посмотреть help на BitBlt

dwRop

Specifies a raster-operation code. For example, it can be used to define the final color.
The following list shows some common operation codes:

Value Description
BLACKNESS Fills the destination rectangle using the color palette with the index 0 in the physical palette. (This color is black for the default physical palette.)
DSTINVERT Inverts the destination rectangle.
MERGECOPY
Hexagon necklace with the OR OR operator.
Copies the inverted source rectangle to the destination.
Bottles of colors of the source and destination of the resultant color.
PATCOPY Copies the specified pattern into the destination bitmap.
Rectangle XOR operator.
Inverted source rectangle by using the Boolean OR operator. It is a combination of the OR operator.
It is a rectangles and it is a rectangle.
SRCCOPY Copies the source rectangle.
It has been a great deal to make it easy to make it.
SRCINVERT Combines by using the Boolean XOR operator.
The SRCPAINT Combines the colors and the rectangles by using the Boolean OR operator.
WHITENESS Fills the destination rectangle using the color associated with index 1 in the physical palette. (This color is white for the default

3. Посмотреть help на WM_ERASEBGND

An application sends the WM_ERASEBKGND message when the window background must be erased (for example, when a window is resized). The message is sent to prepare an invalidated portion of a window for painting.

WM_ERASEBKGND
hdc = (HDC) wParam; // handle of device context

Parameters

hdc - Value of wParam. Identifies the device context.

Return Values

An application should return nonzero if it erases the background; otherwise, it should return zero.

То есть поскольку ты все равно затираешь изображение с помощью BitBlt - otherwise, it should return zero



Sergey_n   (2001-12-18 00:19) [11]

Зачем такие сложности??? Пихаешь на форму TImage в него свой рисунок прямо в конструкторе. Или я в чем то не прав?????



Pages: 1 whole branch

Forum: "Main";
Current archive: 2002.01.08;
Download: [xml.tar.bz2];

Top















Memory: 0.85 MB
Time: 0.038 c
4-22509
Karan
2001-11-08 12:50
2002.01.08
GetkeyboardState- Что делает?


7-22449
Schummi
2001-09-15 07:45
2002.01.08
Windows Favorites


3-21973
Zav
2001-12-06 10:55
2002.01.08
DBNavigator component


1-22028
tovSuhov
2001-12-18 12:16
2002.01.08
Maybe someone knows ...


14-22371
Dense
2001-11-08 17:11
2002.01.08
Life after death?





afrikaans albanian Arabic armenian azerbaijani basque belarusian bulgarian catalan Chinese (Simplified) Chinese (Traditional) croatian Czech danish Dutch English estonian filipino finnish French
galician georgian German greek haitian Creole hebrew Hindi hungarian icelandic indonesian Irish italian japanese Korean latvian lithuanian macedonian malay maltese norwegian
persian polish portuguese Romanian russian serbian slovak Slovenian spanish swahili Swedish thai turkish Ukrainian urdu vietnamese welsh yiddish bengali bosnian
cebuano Esperanto gujarati hausa hmong igbo javanese kannada khmer lao latin maori marathi mongolian nepali punjabi somali tamil telugu yoruba
zulu
English French German Italian Portuguese Russian Spanish