Форум: "Начинающим";
Текущий архив: 2008.05.25;
Скачать: [xml.tar.bz2];
ВнизРисунок на окне Найти похожие ветки
← →
Damien (2008-04-25 19:37) [0]Здравствуйте, уважаемые мастера. Подскажите, как мне разместить рисунок за границами окна. То есть часть рисунка находится в окне, а часть - за его пределами.
← →
{RASkov} © (2008-04-25 20:28) [1]> [0] Damien (25.04.08 19:37)
> как мне разместить рисунок за границами окна
Никак. Либо рисовать на рабочем столе, но это глупо.
Не так давно я уже отвечал на такой вопрос, только он был толи в ВинАпи, толи в Медиа....
Я там пример формы в тестовом виде приводил....
Поищи... Наверняка тебе нужно тоже самое.... вопрос ну прямо один в один :)
← →
Damien (2008-04-25 21:10) [2]
> вопрос ну прямо один в один :)
Это я и был. Чего-то с тем примером у меня не получилось, а вы, RASkov, указали, что необязательно АПИ, вот и подумал сюда черкнуть...
← →
{RASkov} © (2008-04-25 21:44) [3]> [2] Damien (25.04.08 21:10)
> Это я и был.
Да, ну не узнал, сорри :)
> Чего-то с тем примером у меня не получилось,
Что не получилось-то?
← →
Damien (2008-04-25 21:52) [4]Тот пример реализует перетаскивание окна за рисунок, а сам рисунок находится в пределах формы. Или я чего-то не понимаю в силу своей интеллектуальной ограниченности...
object Form1: TForm1
Left = 349
Top = 101
AutoSize = True
BorderStyle = bsNone
Caption = "Form1"
ClientHeight = 68
ClientWidth = 111
Color = clWhite
TransparentColor = True
TransparentColorValue = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = "MS Sans Serif"
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Image1: TImage
Left = 0
Top = 0
Width = 79
Height = 68
AutoSize = True
Picture.Data = {
07544269746D61706E030000424D6E030000000000003E000000280000004F00
0000440000000100010000000000300300000000000000000000020000000200
000000000000FFFFFF00FFFFFFFFFFFFFFFFFFFE0000FFFFFFFFFA0FFFFFFFFE
0000FFFFFFF800003FFFFFFE0000FFFFFF00000003FFFFFE0100FFFFFC000000
007FFFFE0400FFFFF0000000001FFFFE0700FFFFC0000060000FFFFE0A00FFFF
800020200003FFFE0D00FFFF0007C0100001FFFE1000FFFE000400180000FFFE
1300FFFC001C000800003FFE1600FFF8003C000C38001FFE1900FFF0007C000D
FC000FFE1C00FFE001FC0007FC0007FE1F00FFC003F80007FF8003FE2200FF80
0FFC0007F9F001FE2400FF000FF80007FCC001FE2800FF001FF8000FFCC000FE
2B00FE000FF8001FFCC0007E2E00FC000FF8007FFC00003E3000FC000FF807FF
F600003E3400F80007F83FFFEE00003E3700F80007FFFFFFFE00001E3A00F000
03FFFFFFFE00001E3C00F00003FFFFFFFE00000E4000F00001FFFFFFFF00000E
4300E00003FFFE7FF600000E4600E00003FFFFDFF700000E4900E00003FFEE5F
F700000E4C00E00003FDE61FE70000064F00E00007FB9BFFE70000065100E000
03F6C3FFE70000065500E00007F67E3FE600000E5800E00003E27879FF000006
5B00C00003FE3FF1FE0000065E00E00003FE3FE1FE0000066100E00003FC1FE1
E600000E6400E00001FC1FC1E20000066700E00001FC0F80E600000E6900E000
00F80F00E400000E6D00E00000F806006E00000E7000F000007806006C00000E
7300F00000798E007800001E7600F000007FFE30F800001E7900F000007FFC78
F800003E7C00F800007FFC7FF800007E7F00F800007FF8FBF800007E8200FC00
007E0001F00000FE8500FC00007C0001F00000FE8800FE00003C0001F00001FE
8B00FF00003C0001E00003FE8E00FF00003C0003E00007FE9100FF80003C0007
E00007FE9300FFE0001F000FC0000FFE9700FFF0000FE0BFC0001FFE9A00FFF8
0007FFFF80003FFE9D00FFFE0007FFFE0000FFFEA000FFFF0003FFF80001FFFE
A300FFFFC00000000003FFFEA600FFFFF00000000007FFFEA900FFFFF8000000
000FFFFEAC00FFFFFE000000003FFFFEAF00FFFFFF800000007FFFFEB200FFFF
FFE0000000FFFFFEB500FFFFFFFC000007FFFFFEB800FFFFFFFFC0000FFFFFFE
BB00FFFFFFFFFE00FFFFFFFEBE00FFFFFFFFFFFFFFFFFFFEC100}
OnMouseMove = Image1MouseMove
end
end
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND, $F012, 0);
end;
← →
{RASkov} © (2008-04-25 23:02) [5]> [4] Damien (25.04.08 21:52)
> Тот пример реализует перетаскивание окна за рисунок, а сам
> рисунок находится в пределах формы.
В принципе, да. Только формы как таковой не видно, а только рисунок...
Так что же тебе нужно-то?
← →
Damien (2008-04-25 23:20) [6]Странно, а у меня форма видна... Но, вообще, мне нужно чтобы часть рисунка была на окне, а часть за окном. Наверное, моя просьбя, в конечном итоге, сводится к окну нестандартной формы, и вот то место, где, например, выпуклость должен располагаться рисунок. Я мог бы использовать функцию апи по работе с регионами, но что делать, если рисунок сложной формы и создать регион по контуру рисунка невозможно?
← →
{RASkov} © (2008-04-26 00:48) [7]> [6] Damien (25.04.08 23:20)
> но что делать, если рисунок сложной формы и создать регион
> по контуру рисунка невозможно?
Вот в [4] как раз это и делается...
Смотри:
Во первых: Какой бы не был сложности рисунок, он всегда будет охвачен неким прямоугольником, так? т.е. Форма.
Во вторых: Из того вопроса в апи я вроде как помню, что у тебя Д7, так? А в Д7 уже проделана эта рутинная работа с регионами и рисунками...
В третьих: Ну не просто тупо копируй что тебе предлогают, а эксперементируй с этим.... делай выводы...
Вот проект целиком:
http://webfile.ru/1903474 (160 kb)
Возможно у тебя включены темы... или еще чего... попробуй мой екзешник из архива, как он себя поведет...
← →
Damien (2008-04-26 17:44) [8]
> в Д7 уже проделана эта рутинная работа с регионами и рисунками
Чего-то я не заметил этого в Д7... А вообще,RASkov, спасибо, буду эксперементировать. Просто думал, может, есть какая-то функция готовая для этого.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.05.25;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.006 c