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

Вниз

графика   Найти похожие ветки 

 
Вера   (2008-12-24 12:02) [0]

Помогите сделать слайд шоу.Я делаю программу просмотра графических файлов.Как там сделать слайд шоу.На делфи


 
Сергей М. ©   (2008-12-24 12:24) [1]

Используй TTimer


 
{RASkov} ©   (2008-12-24 12:24) [2]

> [0] Вера   (24.12.08 12:02)

По таймеру меняй картинки и делов.... В чем вопрос?


 
Вера   (2008-12-24 12:58) [3]

Можете примерный код привести.Я не очень понимаю как это делать(((((((


 
Сергей М. ©   (2008-12-24 13:07) [4]

Это что, лаба или курсовой ?


 
Вера   (2008-12-24 13:16) [5]

Курсовая


 
Сергей М. ©   (2008-12-24 13:19) [6]

Покажи что тобой уже сделано на сей момент ..


 
Вера   (2008-12-24 13:22) [7]

У меня тема курсовой Разработка программы просмотра графических файлов


 
Вера   (2008-12-24 13:22) [8]

У меня есть прога которая открывает,просматривает картинки вперед назад


 
Вера   (2008-12-24 13:23) [9]

И вот еще хотелось бы сделать слайд шоу и чтобы они поворачивались


 
Вера   (2008-12-24 13:24) [10]

Помогите пожалуйста


 
Вера   (2008-12-24 13:24) [11]

а как показать?код прислать сюда?


 
Сергей М. ©   (2008-12-24 13:27) [12]


> есть прога которая открывает,просматривает картинки вперед
> назад


Она к тебе с луны свалилась ?
Или ты ее самостоятельно написала ?
Если самостоятельно, то см. [6]


 
Вера   (2008-12-24 13:31) [13]

не самостоятельно(((


 
Сергей М. ©   (2008-12-24 13:35) [14]

И как же ты собралась защищать курсовой, если он чужой и ты о происходящем в нем нишиша не петришь ?

Не стыдно, а ?


 
Вера   (2008-12-24 13:38) [15]

ну вообще то я делала вместе с помощником.И что там происходит я понимаю


 
Вера   (2008-12-24 13:38) [16]

Просто я не считаю что я делала самостоятельно


 
Вера   (2008-12-24 13:39) [17]

вот так и написала


 
Сергей М. ©   (2008-12-24 13:43) [18]


> что там происходит я понимаю


Чудесно.

Показ очередной картинки как реализован - по щелчку кнопки ?


 
Вера   (2008-12-24 13:44) [19]

да


 
Сергей М. ©   (2008-12-24 13:54) [20]

У этой кнопки есть метод Click, для показа слайд-шоу достаточно автоматизировать вызов этого метода, что равносильно переодическим щелчкам юзера по этой кнопке.

Для этого и нужен компонент Timer.

В обработчике его события OnTimer, которое будет возникать с заданным тобой в св-ве Interval периодом в мс, как раз и следует вызывать метод Click нужной кнопки.

Осталось только "запустить" этот таймер для показа слайд-шоу.
Для этого нужно установить его св-во Enabled равным True. Останов шоу, соответственно, потребует записи в это св-во значения False.


 
Вера   (2008-12-24 15:17) [21]

с таймером я все сделала а вот с Click я не поняла


 
Вера   (2008-12-24 15:42) [22]

я сделала но он выдает ошибку


 
Сергей М. ©   (2008-12-24 16:08) [23]


> с Click я не поняла


Что не поняла ?


> он выдает ошибку


Какую ?


 
Вера   (2008-12-24 16:19) [24]

Блин я начала делать с этим таймером-теперь вообще прога не работает((((((((((я его удалила и опять не работает


 
Сергей М. ©   (2008-12-24 16:22) [25]


> Блин я начала делать с этим таймером


Блины с икрой знаю, блины с таймером не знаю)


 
Вера   (2008-12-24 16:24) [26]

Можно я перешлю вам вы посмотрите?


 
Сергей М. ©   (2008-12-24 16:26) [27]

Да ты прямо сюда приводи фрагмены "своего" кода ..


 
Вера   (2008-12-24 16:28) [28]

unit form_view;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtDlgs, U_Spisok, Menus, frame_image, U_Tree,
 ExtCtrls, Buttons, ImgList, ComCtrls,U_ListView;

type
 TForm1 = class(TForm);
 Frame31: TFrame3;
   OpenPictureDialog1: TOpenPictureDialog;
   MainMenu1: TMainMenu;
   N1: TMenuItem;
   N2: TMenuItem;
   N3: TMenuItem;
   N4: TMenuItem;
   N5: TMenuItem;
   Image1: TImage;
   N6: TMenuItem;
   BitBtn1: TBitBtn;
   BitBtn2: TBitBtn;
   BitBtn3: TBitBtn;
   BB_next: TBitBtn;
   N1111: TMenuItem;
   ImageList1: TImageList;
   Button1: TButton;
   Button2: TButton;
   procedure Button2Click(Sender: TObject);
   procedure Button5Click(Sender: TObject);
   procedure FormCreate(Sender: TObject);
   procedure ListBox1Click(Sender: TObject);
   procedure Button4Click(Sender: TObject);
   procedure FormActivate(Sender: TObject);
   procedure N3Click(Sender: TObject);
   procedure N4Click(Sender: TObject);
   procedure N5Click(Sender: TObject);
   procedure N6Click(Sender: TObject);
   procedure BitBtn1Click(Sender: TObject);
   procedure BitBtn2Click(Sender: TObject);
   procedure BitBtn3Click(Sender: TObject);
   procedure BB_nextClick(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 List:tstrings;
 LoadPicture:string;

implementation

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);
begin
Form2.Show;
end;

procedure TForm1.Button5Click(Sender: TObject);
var
  path:string;
begin
 getdir(1,path);
 Frame31.Open_Picture(path+ "\"+ Spisok.ListBox1.Items[Spisok.ListBox1.ItemIndex+1]);
 Spisok.ListBox1.ItemIndex:=Spisok.ListBox1.ItemIndex+1;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
list:=TStringList.Create;
end;

procedure TForm1.ListBox1Click(Sender: TObject);
var
  path:string;
begin
 getdir(1,path);
 Frame31.Open_Picture(path+ "\"+ Spisok.ListBox1.Items[Spisok.ListBox1.ItemIndex]);
end;

procedure TForm1.Button4Click(Sender: TObject);
var
  path:string;
begin
 getdir(1,path);
 Frame31.Open_Picture(path+ "\"+ Spisok.ListBox1.Items[Spisok.ListBox1.ItemIndex-1]);
 Spisok.ListBox1.ItemIndex:=Spisok.ListBox1.ItemIndex-1;
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
 Spisok.Show;
end;

procedure TForm1.N3Click(Sender: TObject);
begin
if N3.Checked then
   Spisok.Show
else
  Spisok.Close;
end;

procedure TForm1.N4Click(Sender: TObject);
begin
if N4.Checked then
   Tree.Show
else
   Tree.Close;
end;

procedure TForm1.N5Click(Sender: TObject);
var
  i:integer;
begin
if OpenPictureDialog1.Execute then
 begin
  Frame31.Open_Picture(OpenPictureDialog1.FileName);
  Frame31.Zap_massiva(list);

   with Spisok.ListBox1 do begin
     Items.Assign(List);
     ItemIndex := 0;
   end;

   

    for i:=0 to Spisok.ListBox1.Count-1 do
    begin
     with Form2.ListView1.Items.add do
     begin
        caption :=Spisok.ListBox1.Items[i];
        imageindex := 0;
     end;
    end;

   
 end;
end;

procedure TForm1.N6Click(Sender: TObject);
begin
close;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Frame31.Resize_Down(100);
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
  Frame31.Resize_Up(100);
end;

procedure TForm1.BitBtn3Click(Sender: TObject);
var
  path:string;
begin
 getdir(1,path);
 Frame31.Open_Picture(path+ "\"+ Spisok.ListBox1.Items[Spisok.ListBox1.ItemIndex-1]);
 Spisok.ListBox1.ItemIndex:=Spisok.ListBox1.ItemIndex-1;
end;

procedure TForm1.BB_nextClick(Sender: TObject);
var
  path:string;
begin
 getdir(1,path);
 Frame31.Open_Picture(path+ "\"+ Spisok.ListBox1.Items[Spisok.ListBox1.ItemIndex+1]);
 Spisok.ListBox1.ItemIndex:=Spisok.ListBox1.ItemIndex+1;
end;

end.


 
Вера   (2008-12-24 16:30) [29]

unit frame_image;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, jpeg, ExtCtrls;

type
 TFrame3 = class(TFrame)
   Image1: TImage;
 private
   { Private declarations }
 public
   { Public declarations }
   procedure Resize_Up(X:integer);
   procedure Resize_Down(X:integer);
   procedure scandir(startdir: string; mask:string; list:tstrings);
   procedure Center();
   procedure Zap_massiva(List:tstrings);
   procedure Open_Picture(FileName:string);

 end;

implementation

{$R *.dfm}

//Поиск в текущей директории по заданной маске всех файлов и заполнение им массива List
procedure TFrame3.scandir(startdir: string; mask:string; list:tstrings);
var searchrec : tsearchrec;
begin
if mask = "" then mask := "*.*";
if startdir[length(startdir)] <> "" then startdir := startdir + "";
if findfirst(startdir+mask, faanyfile, searchrec) = 0 then
begin
repeat
application.processmessages;
if (searchrec.attr and fadirectory) <> fadirectory then
list.add(searchrec.name)
else if
(searchrec.name <> "..") and (searchrec.name <> ".") then
begin
list.add(searchrec.name + "");
scandir(startdir + searchrec.name + "",mask,list);
end;
until
findnext(searchrec) <> 0;
findclose(searchrec);
end;
end;

procedure TFrame3.Resize_Up(X:integer);
begin
   Image1.Height:=Image1.Height+X;
   Image1.Width:=Image1.Width+X;
   Center();
end;

procedure TFrame3.Open_Picture(FileName:string);
begin
Image1.Picture.LoadFromFile(FileName);
end;

// Процедура заполнения массива названиями картинок из текущего каталога
procedure TFrame3.Zap_massiva(List:tstrings);
var
  path,disc:string;
  i:integer;
begin
   getdir(0,path);

   disc:="";
   for i:=1 to 2 do
       disc:=disc+path[i];

   List.Clear;

   scandir(disc,"*.jpg",List);

   scandir(disc,"*.jpeg",List);
   scandir(disc,"*.ico",List);
   scandir(disc,"*.jpg",List);
   scandir(disc,"*.bmp",List);
end;

//Уменьшение размера картинки на Х
procedure TFrame3.Resize_Down(X:integer);
begin
   Image1.Height:=Image1.Height-X;
   Image1.Width:=Image1.Width-X;
//Вызов процедуры установки картинки в центр окна
   Center();
end;

// Процедура установки картинки в центр окна
procedure TFrame3.Center();
begin
  Image1.Left:=trunc(height/2-Image1.height/2);
  Image1.top:=trunc(height/2-Image1.height/2)
end;

end.


 
Сергей М. ©   (2008-12-24 16:32) [30]

Так..

И в этом коде не работает ?


 
Вера   (2008-12-24 16:35) [31]

да


 
Сергей М. ©   (2008-12-24 16:37) [32]

Что конкретно в этом коде не работает ?


 
Вера   (2008-12-24 16:41) [33]

The FormCreate method referenced by Form1


 
Сергей М. ©   (2008-12-24 16:48) [34]


> The FormCreate method referenced by Form1


Это что ?


 
Вера   (2008-12-24 16:53) [35]

ошибку такую выдает


 
Сергей М. ©   (2008-12-24 16:56) [36]


> ошибку такую выдает


А где в этой фразе слово "ошибка" ? Не вижу .. Приводи фразу дословно, а не огрызок ..

И если это ошибка, то где, в какой момент и при каких обстоятельствах ты ее наблюдаешь ?


 
Вера   (2008-12-24 16:59) [37]

The FormCreate method referenced by Form1.OnCreate does not exist.Remove the reference?Выдает когда пытаюсь закрыть  проект


 
Вера   (2008-12-24 17:00) [38]

и вообще прога даже не запускается-т.е. Run не работает


 
Сергей М. ©   (2008-12-24 17:06) [39]


> does not exist


А он, как видишь, существует.

Выбери его явно в Инспекторе объектов в выпадающем списке выбора обработчиков события OnCreate формы Form1


> Run не работает


Неужели прямо вот так и говорит "Не работаю" ?


 
Вера   (2008-12-24 17:08) [40]

ну он серый а не зеленый как когда запускается



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

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

Наверх





Память: 0.54 MB
Время: 0.065 c
2-1340658279
Альманах
2012-06-26 01:04
2013.03.22
Создание одного фрейма два раз


15-1352536128
alexdn
2012-11-10 12:28
2013.03.22
asp.net


2-1343362241
Pcrepair
2012-07-27 08:10
2013.03.22
Сортировка строк. сложный случай


15-1345212220
Jimmy
2012-08-17 18:03
2013.03.22
Описание exe-файла


2-1328770345
Gu
2012-02-09 10:52
2013.03.22
Cmd





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