Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Компоненты и классы
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 18.05.2009, 15:52
Блондинка и Delphi Блондинка и Delphi вне форума
Прохожий
 
Регистрация: 06.05.2009
Сообщения: 2
Репутация: 10
По умолчанию Всплывающие окна

Подскажите пожалуйста можно ли в делфи создать всплывающие информационные окна.Причем такие чтоб на них можно было расположить кнопки, а так же выводить информацию из БД.
Ответить с цитированием
  #2  
Старый 18.05.2009, 16:21
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Вот, я когда-то писал, как работает уже не помню
Код:
unit movingwnd;

interface


procedure ShowMovingWindow(aText:String);

implementation
{.$define useIDAF}
{.$define intwndproc}

uses
{$ifdef useIDAF}
  idAntiFreeze,
{$endif}
SysUtils, Classes, Windows, Forms, Controls, StdCtrls, Graphics;

procedure ShowMovingWindow(aText:String);
var
  ShellHandle:THandle;
  Rect:TRect;
  NeedTop:Integer;
  HintForm:TForm;
  HintLabel:TLabel;
{$ifdef intwndproc}
  ActiveWnd:THandle;
{$endif}
{$ifdef useIDAF}
  ida:TIdAntiFreeze;
{$endif}
begin
  //Ищем "окошко с часиками"
  ShellHandle := FindWindow('Shell_TrayWnd', nil);
  if ShellHandle = 0 then
    exit;
{$ifdef useIDAF}
  ida:=TIdAntiFreeze.Create(nil);
{$endif}
  GetWindowRect(ShellHandle, Rect);
  //Создаем форму
  HintForm:=TForm.Create(nil);
  with HintForm do
  begin
    Width:=245;
    Height:=100;
    Color:=clSkyBlue;
    BorderStyle:=bsNone;
    //Создаём текст
    HintLabel:=TLabel.Create(nil);
    with HintLabel do
    begin
        Parent:=HintForm;
        WordWrap:=true;
        Caption:=' '+Trim(aText)+' ';
        Align:=alClient;
        Layout:=tlCenter;
        Alignment:=taCenter;
    end;

    AlphaBlend:=true;
    AlphaBlendValue:=220;
{$ifdef intwndproc}
    ActiveWnd:=GetActiveWindow;
{$endif}
    ShowWindow(Handle,SW_SHOWNOACTIVATE);
{$ifdef intwndproc}
    SetActiveWindow(ActiveWnd);
{$endif}
    Left:=Screen.Width-Width;
    Top:=Screen.Height-20;
    //Выезжаем вверх
    NeedTop:=Rect.Top-Height;
    while Top>NeedTop do
    begin
      Top:=Top-2;
      Repaint;
{$ifdef useIDAF}
      ida.Sleep(10);
      ida.Process;
{$else}
      Sleep(10);
{$endif}
    end;
{$ifdef useIDAF}
      ida.Sleep(2000);
{$else}
      Sleep(2000);
{$endif}
    //Выезжаем вниз
    NeedTop:=Screen.Width-20;
    while Top<NeedTop do
    begin
      Top:=Top+2;
      Repaint;
{$ifdef useIDAF}
      ida.Sleep(10);
      ida.Process;
{$else}
      Sleep(10);
{$endif}
    end;
    HintLabel.Free;
    Free;
  end;
{$ifdef useIDAF}
  ida.Free;
{$endif}
end;
end.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #3  
Старый 20.05.2009, 12:41
Блондинка и Delphi Блондинка и Delphi вне форума
Прохожий
 
Регистрация: 06.05.2009
Сообщения: 2
Репутация: 10
По умолчанию

Спасибки, немного разобралась
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 02:31.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter