PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Вопросы новичка


Вопросы новичка

Сообщений 781 страница 810 из 1000

781

haav написал(а):

haav

цель у меня в целом: общение между двумя моими же программа, т. е. одной своей проги передавать в другую какие-то данные с помощью "SendMessage и PostMessage", конечно если это возможно.

0

782

Adrenalin Это было нужно?

Первая программа(принимающая):

Код:
Enumeration
  #Window_0
EndEnumeration


Enumeration
  #Editor_0
  #Editor_1
EndEnumeration


Procedure Open_Window_0()
  If OpenWindow(#Window_0, 220, 0, 600, 300, "MyWIN",  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
    If CreateGadgetList(WindowID(#Window_0))
      EditorGadget(#Editor_0, 30, 70, 480, 130)
      EditorGadget(#Editor_1, 30, 210, 480, 130)
    EndIf
  EndIf
EndProcedure

Open_Window_0()
Repeat
  event=WaitWindowEvent()
  
Until event=#PB_Event_CloseWindow

Вторая программа(отсылающая):

Код:
 hwin.l 
  hwin = FindWindow_(0,"MyWIN" ) 
  If hwin <> 0                    
    hedit=FindWindowEx_(hwin,0,"RichEdit20A",0)   
    hedit1=FindWindowEx_(hwin,hedit,"RichEdit20A",0)  
    SendMessage_(hedit, #EM_REPLACESEL, 0, "Пора вставать на работу") 
    SendMessage_(hedit1, #EM_REPLACESEL, 0, "А может ну ее эту работу") 
  EndIf

0

783

haav написал(а):

haav

уже что-то, попробую оттолкнуться от этого, посмотрю, что потом получиться...

принцип понятен, СПС.

0

784

Ребят столкнулся с такой проблемой! Не могу прочитать текст в программе, она его выдает в таком виде
Р° почему Сѓ Андрея РїСЂРѕРіСѓ-то РЅРµ приняли? третий раз уже<br>СѓСѓСѓ: РґР° РѕРЅР° кривая<br>СѓСѓСѓ: РІРѕС‚ надо ему почесать жопу. Р·РІРѕРЅРёС‚ РѕРЅ значит РЅР° РґСЂСѓРіРѕР№ конец РіРѕСЂРѕРґР° чуваку РѕРґРЅРѕРјСѓ, тот РїРѕ его поручению идет РєРѕ второР
P.S текст этот берется из отдельного текстового файла!

0

785

Скорее всего файл в формате юникода.
Нужно функцией ReadStringFormat опеределить формат файла и затем читать в требуемом формате.
Кое-что по теме, есть здесь http://pure-basic.narod.ru/docs/MultiOS.html

0

786

Большое спасибо Петр!!!

0

787

Подскажите, научите кто нибудь! Как  из dll вызвать функцию? Читал тут статью по созданию библиотеки и её использованию, вроде все ясно, но это если сам её создал! А как быть если библиотека сторонняя, скачанная из интернета! Пробовал вызывать её как описано в статье , но кроме ошибок ничего не происходит! Подскажите пожалуйста!

0

788

Есть описание функций скачаной DLL?

0

789

Нет...в том то и дело что нет! Я воспользовался, кажется твоим примером считывания адресов функций! Но ни чего это ни дало!(

0

790

Нужно иметь описание функций и их аргументов.

0

791

А если не этого не имеется, то без вариантов? Может софтина какая есть?

0

792

С помощью этого кода можно узнать имена всех функции DLL, но не их аргументы.

Код:
Path.s=OpenFileRequester("Открыть файл", "", "*.dll|*.dll|All Files|*.*", 0) 
 If Path<>""
  OpenLibrary(0,Path) 
  ExamineLibraryFunctions(0) 
   While NextLibraryFunction() 
    cc+1 
    Debug LibraryFunctionName() 
   Wend 
  Debug cc 
 EndIf

Я еще не встречал программы, умеющей корректно определять аргументы функций.

Может проще попробовать найти в интернете описание этой DLL?

0

793

Я уже понял что проще найти описание...) спасибо Петр!

0

794

Друзья! Такой вопрос: можно ли сделать окно прозрачным или полупрозрачным?
И если да, то как?

0

795

Дмитрий написал(а):

можно ли сделать окно прозрачным или полупрозрачным

Код:
If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered) 
  SetWindowLong_(WindowID(0), #GWL_EXSTYLE, GetWindowLong_(WindowID(0), #GWL_EXSTYLE) | $00080000)
  SetLayeredWindowAttributes_(WindowID(0), 0, 100, 2)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow 
EndIf

Третий аргумент функции SetLayeredWindowAttributes определяет прозрачность окна.
Допустимые значения 0 - 255

0

796

Спасибо Петр! Все работает, все замечательно :-)

0

797

Друзья! Подскажите возможно ли изменить цвет выделенного элемента в ListViewGadget'e !? Если да то как? Может через API как нибудь? И еще, можно ли убрать скрол в ListViewGadget?

0

798

Дмитрий написал(а):

убрать скрол в ListViewGadget

Может есть константа, я не знаю, как вариант у любого гаджета можно скрыть и системную рамку и скролинг -
через PanelGadget() :

Код:
Enumeration 
 #Window_0
 #Panel
 #List
EndEnumeration

OpenWindow(#Window_0,0,0,200,400,"Заглавие",#WS_OVERLAPPEDWINDOW|#PB_Window_ScreenCentered)
 
 PanelGadget(#Panel, 10, 10, 180, 380)
  ListViewGadget(#List, 0, 0, 200, 380) ; ширина больше ширины панели, прокручиваем колесиком
   For a=0 To 40
    AddGadgetItem(#List, -1, "строка   "+Str(a)  )
   Next a
 CloseGadgetList()


Repeat 
Event=  WaitWindowEvent() 
Until Event= #PB_Event_CloseWindow

может подойдёт...

0

799

Дмитрий написал(а):

И еще, можно ли убрать скрол в ListViewGadget?

Код:
If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  ListViewGadget(1,10,10,0,0,#LBS_DISABLENOSCROLL)
  For a=0 To 40
    AddGadgetItem(1, -1, "строка   "+Str(a)  )
   Next a

  SetWindowLongPtr_(GadgetID(1),#GWL_STYLE,#WS_CHILD|#WS_VISIBLE)
  ResizeGadget(1,#PB_Ignore,#PB_Ignore,480,230)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf

0

800

Спасибо мужики!!! Может у кого есть какой нибудь мануальчик описывающий все флаги? Если есть поделитесь пожалуйста! :-)

0

801

Дмитрий написал(а):

какой нибудь мануальчик описывающий все флаги?

Учись работать с MSDN - только там есть ВСЕ флаги. Там вообще есть всё, что касается программирования под Win.

0

802

Что делать если в строке с Event=WaitWindowEvent() выскакивает эта ошибка:"At least one window should be opened to use this command."! Чё ему не хватает?

0

803

Дмитрий написал(а):

Что делать если в строке с Event=WaitWindowEvent() выскакивает эта ошибка:"At least one window should be opened to use this command."! Чё ему не хватает?

Надо, открыть хотя бы одно окно с помощью OpenWindow.  Если эта функция(OpenWindow) находится в процедуре, возможно забыл запустить процедуру...

0

804

Не забыл! Ошибка вылетает когда я закрываю программу!я пишу проигрыватель, все работает, но вот когда закрываю его, вылетает эта ошибка и музыка продолжает играть, приходится убивать процесс через диспетчер!

0

805

Дмитрий написал(а):

Дмитрий

без выкладывания кода, можешь помочь себе только сам...

0

806

Всем привет! Пурик изучаю пару вечеров. Интерисует такой вопрос (может быть повторяюсь): возможно ли сделать окно с большим текстом и выделением цветом отдельных слов (типа "Инструкция" и бла-бла-бла...), если да, то как?

Заранее спасибо!

Отредактировано max (25.11.2010 21:08:54)

0

807

Я не совсем понял, что было нужно, может это?

Код:
Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
;
Enumeration
  #Text_0
  #Text_1
EndEnumeration

;- Fonts
Global FontID1,FontID2
FontID1 = LoadFont(1, "Arial", 72)
FontID2 = LoadFont(2, "Arial", 48)
Procedure Open_Window_0()
  If OpenWindow(#Window_0, 323, 164, 600, 300, "New window ( 0 )",  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
    If CreateGadgetList(WindowID(#Window_0))
      TextGadget(#Text_0, 105, 35, 395, 100, "Привет", #PB_Text_Center)
      SetGadgetFont(#Text_0, FontID1)
      TextGadget(#Text_1, 105, 200, 220, 100, "Привет", #PB_Text_Center)
      SetGadgetFont(#Text_1, FontID2)
      SetGadgetColor(#Text_1,#PB_Gadget_FrontColor,$47F7B8)
      
    EndIf
  EndIf
EndProcedure
Open_Window_0()
Repeat
  event=WaitWindowEvent()
  
Until event=#PB_Event_CloseWindow

0

808

max написал(а):

возможно ли сделать окно с большим текстом и выделением цветом отдельных слов (типа "Инструкция" и бла-бла-бла...), если да, то как?

Наиболее просто это сделать одним из двух способов:

Создать в "Ворде" RTF документ, разкрасить его и сохранить в виде файла.
В программе текст из него загружать в EditorGadget. При этом, текст будет раскрашен так-же как раскрасили его в "Ворде".

Можно создать HTML страничку с цветным текстом и загружать её в WebGadget.
Вот пример http://pure-basic.narod.ru/docs/e_book.html

Есть конечно варианты по сложнее, но я думаю что устроит один из двух выше перечисленых.

0

809

haav написал(а):

Я не совсем понял, что было нужно, может это?

Нет, не это, но все равно спасибо, может быть пригодится.

Пётр написал(а):

Наиболее просто это сделать одним из двух способов:

Спасибо! Буду пробовать!

0

810

Пётр написал(а):

Создать в "Ворде" RTF документ, разкрасить его и сохранить в виде файла.В программе текст из него загружать в EditorGadget.

Возможно я туплю, но не могу понять как применить EditorGadget. Перевод справки ясности не внес. Пётр, если не трудно, раскажите "чайнику".

Заранее спасибо!

0


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Вопросы новичка