Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

передача с одной форму в другую TMemoryStream


gentos ©   (2007-08-09 14:13:00) 

есть следующее есть две формы мне надо с одной формы передать фотку в другую через TMemoryStream. При нажатии на кнопку одной формы пишу следующее

procedure TScanDocForm.BtnShowClick(Sender: TObject);
var
  MStream: TMemoryStream;
  Bit : TBitmap;
begin
    frm := TfrmImage.Create(Self);
    MStream:=TMemoryStream.Create;
    Bit := TBitmap.Create;
    ScanImage.Picture.Bitmap.SaveToStream(MStream);
    MStream.Position:=0;
    frmImage.gotopapa(MStream);
    MStream.Position:=0;
    Bit.LoadFromStream(MStream);
    img.Picture.Assign(Bit);
    MStream.Free;
    Bit.Free;
end;


где gotopapa это процедура другой формы, которая должна принимать этот самый поток TMemoryStream, и после приобразований выводиться на экран


procedure TfrmImage.gotopapa(Mstream: TMemoryStream);
var
  Bit : TBitmap;
begin
  Bit := TBitmap.Create;
  MStream.Position:=0;
  Bit.LoadFromStream(MStream);
  image.Picture.Assign(Bit);
end;


не пашет, вообщем ничего , не знаю что делать ...


Сергей М.   (2007-08-09 15:57:00) [1]


> MBo ©   (09.08.07 15:50) [15]


> DrawMStream


Это не весело)

ГоуТуПапа гораздо веселее)


antonn   (2007-08-09 15:54:00) [2]

и еще try..finally не забываем%)


MBo   (2007-08-09 15:50:00) [3]

вот все работает, рисуется. а напутал ты с созданием новой формы и передачей потока неизвестно, кому, похоже.


procedure TForm1.Button8Click(Sender: TObject);
var
 MStream: TMemoryStream;
 Bit : TBitmap;
begin
 MStream:=TMemoryStream.Create;
 Bit := TBitmap.Create;
 Bit.LoadFromFile('e:\aaa.bmp');
 Bit.SaveToStream(MStream);
 Form2.Show;
 Form2.DrawMStream(MStream);
 MStream.Free;
 Bit.Free;
end;

//--------------------------------------------------
procedure TForm2.DrawMStream(ms: TStream);
begin
 ms.Position := 0;
 Image1.Picture.Bitmap.LoadFromStream(ms);
end;


Сергей М.   (2007-08-09 15:13:00) [4]


> когда веселиться не с чего


Судя по твоим знаниям и неэквивалентным им амбициям, веселиться действительно пока нет никакого повода)


gentos   (2007-08-09 15:05:00) [5]


> Сергей М. ©   (09.08.07 15:00) [12]


та это я написал так просто, чтобы хоть чем-то себя развеселить, когда веселиться не с чего )


Сергей М.   (2007-08-09 15:00:00) [6]


> пишешь на автомате


Легенда о чукче-писателе в очер.раз находит подтверждение)

А "гоутупапа" - это сильно)

Ждем очередных шедевров а-ля "гоутумама", "гоутувнучка", "гоутужучка")


gentos   (2007-08-09 14:57:00) [7]


> Сергей М. ©   (09.08.07 14:43) [10]


frmImage.gotopapa(MStream); //э ЭТО что за абракадабра ?

вот за это - большое , большое спасибо, пишешь на автомате фигню всякую, а потом ищешь ошибку тристалетнах :)


Сергей М.   (2007-08-09 14:43:00) [8]


> можете сказать иль написать где ошибка, и сказать как ее
> исправить


Весь твой код - одна сплошная большая ошибка.
Выкинь его нафих и попытаяся переформулировать задачу и переосмыслить ее решение.

Я серьезно.

    frm := TfrmImage.Create(Self); //вот ты создал некий объект-форму, и где ты к нему обращаешься впоследствии ?
..
   frmImage.gotopapa(MStream); //э ЭТО что за абракадабра ?


> мне еще креэйт теблы и тригерры писать, я больше с базами
> люблю


Мы в курсе) ..Чукча, известно, не читатель)

А базы-то с тобой "любят" ?)


gentos   (2007-08-09 14:34:00) [9]


> Johnmen ©   (09.08.07 14:27) [7]


а можете сказать иль написать где ошибка, и сказать как ее исправить ? , буду очень вам благодарен, потому-что хочу двигаться дальше , а этот TMemoryStream не пускает :), очень надо мне еще креэйт теблы и тригерры писать, я больше с базами люблю, а тут ...


gentos   (2007-08-09 14:31:00) [10]


> Johnmen ©   (09.08.07 14:27) [7]


непонятно где F1 нажимать-то надо пробовал

var
 MStream: TMemoryStream

в глобал пихать , все равно не доходит читай, читай , я уже 2 часа и так и сяк :) и нифига , выходные где же вы...


Johnmen   (2007-08-09 14:27:00) [11]


> меня интересует правильно ли я организовал передачу TMemoryStreamа
> с одной формы в другую

Неправильно. Читать хелп о передаче параметров.


gentos   (2007-08-09 14:26:00) [12]


> Сергей М. ©   (09.08.07 14:22) [4]


ага, ицца большие, голова маленькая...


gentos   (2007-08-09 14:25:00) [13]


> Johnmen ©   (09.08.07 14:20) [3]

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


Сергей М.   (2007-08-09 14:22:00) [14]


> Если бы я умел им пользоваться


Что ж мешает научиться ?
Неужели печальный опыт танцора ?)


Johnmen   (2007-08-09 14:20:00) [15]


> тут точнее не улыбаться надо...

а за учебники садиться?


gentos   (2007-08-09 14:17:00) [16]

Если бы я умел им пользоваться :), тут точнее не улыбаться надо...


Сергей М.   (2007-08-09 14:16:00) [17]


> не знаю что делать


Отладчик в зубы - и вперед, с песней)


Наверх

Титульная страница Поиск, карта сайта Написать письмо