Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.04.29;
Скачать: [xml.tar.bz2];

Вниз

Красивая форма.   Найти похожие ветки 

 
..::KraN::..   (2007-04-05 22:23) [0]

Пожалуйста, подскажите как создать нестандартную форму, типа круглую или с закругленными краями.


 
Leonid Troyanovsky ©   (2007-04-05 23:30) [1]


> ..::KraN::..   (05.04.07 22:23)  

> Пожалуйста, подскажите как создать нестандартную форму,
> типа круглую или с закругленными краями.

А ты, брат, эстет.

--
Regards, LVT.


 
Германн ©   (2007-04-05 23:47) [2]


> А ты, брат, эстет.
>

Продолжение сей фразы читать у Гашека в Бравом солдате Швейке :)


 
MikePetrichenko ©   (2007-04-06 05:16) [3]

Regions->MSDN


 
Steep ©   (2007-04-06 06:32) [4]

SetWindowRgn(hWnd,CreateEllipticRgn(0,0,300,150),TRUE);


 
SergGG ©   (2007-04-06 09:07) [5]

procedure TForm1.FormCreate(Sender: TObject);
var
 regn, tmpRegn: integer; // регион окна и временный регион
 x, y: integer; // координаты пикселя
 nullClr: TColor; // <прозрачный цвет>
begin
 nullClr := image1.picture.Bitmap.Canvas.Pixels[0, 0];
 // Image1 это картинка по которой создается форма окна
 regn := CreateRectRgn(0, 0, image1.picture.Graphic.Width,
   image1.picture.Graphic.Height);
 for x := 1 to image1.picture.Graphic.Width do
   for y := 1 to image1.picture.Graphic.Height do
     if image1.picture.Bitmap.Canvas.Pixels[x - 1, y - 1] = nullClr then
     begin
       tmpRegn := CreateRectRgn(x - 1, y - 1, x, y);
       CombineRgn(regn, regn, tmpRegn, RGN_DIFF);
       DeleteObject(tmpRegn);
     end;
 SetWindowRgn(form1.handle, regn, true);
end;


В Image1 можешь вставить любую картинку. Наглядней будет смотреться, если картинка будет иметь сплошной фон одного цвета


 
REKS   (2007-04-06 10:11) [6]

SergGG ©   (06.04.07 09:07) [5]

Вставил картинку, запускаю - формы не видно вообще :)


 
Sergg   (2007-04-06 10:41) [7]

> Вставил картинку, запускаю - формы не видно вообще :)

Видимо Вы вставили один только фон одного цвета, а не картинку


 
SergGG ©   (2007-04-06 10:49) [8]

> nullClr := image1.picture.Bitmap.Canvas.Pixels[0, 0];

Это цвет, который будет невидимым!


 
REKS   (2007-04-06 10:53) [9]

Sergg   (06.04.07 10:41) [7]

именно картинку


 
REKS   (2007-04-06 10:55) [10]

SergGG ©   (06.04.07 10:49) [8]

> nullClr := image1.picture.Bitmap.Canvas.Pixels[0, 0];

Это цвет, который будет невидимым!

Не понятно, есть картинка из тысяч цветов, какой будет невидимым? Не видно формы вообще, какую бы картинку не вставил


 
SergGG ©   (2007-04-06 11:11) [11]

> REKS   (06.04.07 10:55) [10]
У меня все работает.
Для формы еще:
BorderStyle=bsNone


 
REKS   (2007-04-06 11:22) [12]

>> SergGG ©   (06.04.07 11:11) [11]

Не пришлешь программку свою? У меня все тоже самое - формы не видно...

Адрес tornado@nnovgorod.ru


 
SergGG ©   (2007-04-06 11:32) [13]

> REKS   (06.04.07 11:22) [12]
в [5] и есть весь код програмки. Ну если надо, то пришлю


 
REKS   (2007-04-06 11:33) [14]

>>> SergGG ©   (06.04.07 11:32) [13]

Все по тому коду сделал - не идет....пришли плиз посмотрю где обшипся :)


 
SergGG ©   (2007-04-06 12:12) [15]

> REKS   (06.04.07 11:33) [14]
Скорей всего Вы устанавливаете картинку большого размера. И просто процедура долго выполняется. А у Вас просто не хватило терпения подождать до конца выполнения процедуры.
Поместите рис. меньшего размера


 
REKS   (2007-04-06 14:13) [16]

>> SergGG ©   (06.04.07 12:12) [15]

Тоже самое, ничего нет


 
SergGG ©   (2007-04-06 15:38) [17]

> REKS   (06.04.07 14:13) [16]
Я Вам отправил проект.
Если что, пишите.


 
Amoeba ©   (2007-04-06 17:23) [18]

Библиотека компонент FormRgn (создание окон непрямоугольной формы):  
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=83



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.04.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.038 c
2-1176297134
aha
2007-04-11 17:12
2007.04.29
есть база данных по оборудованию , мне хочется добавить


2-1175775557
leonidus
2007-04-05 16:19
2007.04.29
Глюки с отображением формы


2-1176131833
delphi_
2007-04-09 19:17
2007.04.29
проблемка с процедурой


1-1172743566
linox
2007-03-01 13:06
2007.04.29
к текущему времени добавить число


2-1176065515
Officeman
2007-04-09 00:51
2007.04.29
TLIstView selected





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский