Форум: "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]ну он серый а не зеленый как когда запускается
← →
Сергей М. © (2008-12-24 17:11) [41]
> Вера (24.12.08 16:24) [26]
>
> Можно я перешлю вам вы посмотрите?
Предлагаю вместе с этой бедой переслать, ну скажем, 1000 WMR, чтобы тебя совесть не мучила)
Назад получишь отремонтированный проект с работающим слайд-шоу)
← →
Вера (2008-12-24 17:14) [42]Что такое WMR?
← →
Сергей М. © (2008-12-24 17:16) [43]Рублевая у.е. в системе электронной расчетно-платежной системы WebMoney)
← →
Сергей М. © (2008-12-24 17:16) [44]Яндекс.Деньги тоже сойдет)
← →
Вера (2008-12-24 17:17) [45]т.е. 1000руб?а из рук в руки никак?потому что у меня нет этой системы
← →
Вера (2008-12-24 17:18) [46]ты где живёшь?
← →
Сергей М. © (2008-12-24 17:20) [47]Из рук в руки ты будешь с преподом расчитываться, когда завалишь курсовой)
А завести и пополнить свой счет в WebMoney или Яндекс.Деньгах - дело максимум суток)
← →
Вера (2008-12-24 17:23) [48]а когда ты мне эту прогу сделаешь?
← →
Сергей М. © (2008-12-24 17:30) [49]Думаю, с момента как я обнаружу в своем WMR-кошельке означенную сумму, полчаса будет вполне достаточно привести эту беду в порядок)
← →
Вера (2008-12-24 17:32) [50]а где гарантия что ты меня не кинешЬ?
← →
Сергей М. © (2008-12-24 17:36) [51]Гарантии раздает только Аллах, и то по большим праздникам)
← →
Вера (2008-12-24 17:37) [52]понятно
← →
Вера (2008-12-24 17:38) [53]спасибо за услуги.Ищи таких дураков в другом месте.
← →
Сергей М. © (2008-12-24 17:41) [54]Ты высылаешь проект, я его привожу в порядок, добавляю слад-шоу и высылаю тебе демо без исходников. Если все устраивает, ты перечисляешь сумму и тут же получаешь исходники)
← →
Сергей М. © (2008-12-24 17:43) [55]Наше дело предложить - ваше отказаться)
А курсач-то тепм временем дамокловым мечем все ближе и ближе к шее)
← →
Вера (2008-12-24 17:44) [56]Во-первых,мне курсовую надо сделать сегодня и сдать завтра.А чтобы создать эту систему и пополнить счет нужен как ты говоришь день...
← →
Вера (2008-12-24 17:46) [57]тем более я не знаю-создать то создадим-а вот пополнить может стать проблемой
← →
Вера (2008-12-24 17:46) [58]положатся ли деньги в банкомате
← →
Сергей М. © (2008-12-24 20:37) [59]
> положатся ли деньги в банкомате
Ты еще банкомату задай такой же вопрос как в [50]
А времечко-то идет)
А ты по-прежнему ни в зуб ногой)
И завтра тебе на Голгофу, а не мне)
Так кто из нас на поле дураков, а ?
← →
Сергей М. © (2008-12-24 20:40) [60]
> надо сделать сегодня и сдать завтра
А какого ж хрена ты весь семестр делала, а ?
Хвост задрав дурака валяла вместо того чтобы учиться, так ведь ?)
И теперь ищешь лихорадочно, где бы нахалявку да по-быстрому дыры залатать да прикрыть свою безалаберность, так ведь ?
← →
Сергей М. © (2008-12-24 20:45) [61]И куда исчез тот "помощник", тот самый работник той самой богадельни, что якобы "помог" тебе, так что ты ни шута не понимаешь, что и как у тебя происходит в проекте, который ты якобы должна представить завтра готовым ?
Страницы: 1 2 вся ветка
Форум: "Media";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.6 MB
Время: 0.133 c