اطلاعیه

کاربر گرامی

به انجمن برنامه نویسی AnswerCenter.ir خوش آمدید

 برای استفاده از تمامی امکانات سایت لطفا در انجمن عضو شوید


  • 0
hosein_h

قراردادن پس زمینه دوم به باتن

سوال

با عرض سلام وخسته نباشید

من میخواستم به باتن وقتی که کلیک شد پس زمیه دوم نشان داده بشود وقتی باتن رها شد به پس زمینه قبلی بازگرده تو دیزاینر این قابلیت هست ولی من نمیخوام ازدیزاینر بیسیک استفاده کنم میخواستم تو محیط کدنویسی این کار بکنم ممنون میشم دوستان راهنماییم کنن.

با تشکر

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

7 پاسخ به این سوال تا کنون داده شده است

  • 0
در 1 ساعت قبل، hosein_h گفته است :

 

سلام خدمت سما. باید از StateListDrawable استفاده کنید. حالتهای مختلف و بیتمپ متناسب رو بدین و بکگراند باتن بزارین. یه مثال از سایت مرجع.


	Dim btnBitmap As Button
	' Define a BitmapDrawable for Enabled state
	Dim bdwEnabled As BitmapDrawable
	bdwEnabled.Initialize(LoadBitmap(File.DirAssets, "btnArrowDown0.png"))
	' Define a BitmapDrawable for Pressed state
	Dim bdwPressed As BitmapDrawable
	bdwPressed.Initialize(LoadBitmap(File.DirAssets, "btnArrowDown1.png"))
	' Define a StateListDrawable
	Dim stdBitmap As StateListDrawable
	stdBitmap.Initialize
	Dim states(2) As Int
	states(0) = stdBitmap.state_enabled
	states(1) = -stdBitmap.state_pressed
	stdBitmap.addState2(states, bdwEnabled)
	Dim states(1) As Int
	states(0) = stdBitmap.state_enabled
	stdBitmap.addState2(states, bdwPressed)
	' Set stdBitmap to button btnBitmap
	btnBitmap.Background = stdBitmap

 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 22 ساعت قبل، محمدرضا شاهپیری گفته است :

سلام خدمت سما. باید از StateListDrawable استفاده کنید. حالتهای مختلف و بیتمپ متناسب رو بدین و بکگراند باتن بزارین. یه مثال از سایت مرجع.



	Dim btnBitmap As Button
	' Define a BitmapDrawable for Enabled state
	Dim bdwEnabled As BitmapDrawable
	bdwEnabled.Initialize(LoadBitmap(File.DirAssets, "btnArrowDown0.png"))
	' Define a BitmapDrawable for Pressed state
	Dim bdwPressed As BitmapDrawable
	bdwPressed.Initialize(LoadBitmap(File.DirAssets, "btnArrowDown1.png"))
	' Define a StateListDrawable
	Dim stdBitmap As StateListDrawable
	stdBitmap.Initialize
	Dim states(2) As Int
	states(0) = stdBitmap.state_enabled
	states(1) = -stdBitmap.state_pressed
	stdBitmap.addState2(states, bdwEnabled)
	Dim states(1) As Int
	states(0) = stdBitmap.state_enabled
	stdBitmap.addState2(states, bdwPressed)
	' Set stdBitmap to button btnBitmap
	btnBitmap.Background = stdBitmap

 

با عرض سلام ممنون که جواب دادین

ولی این من تست کردم نمیدونم اشکال از کجاست من یک باتن تو دیزاینر دارم واین جور طبق سورس شما قراردادم ارور داد ممنون میشم راهنماییم کنید اشکال از کجاست و این کد در کدام رویداد قرار بدم رویداد اکتیویتی یا باتن فکرکنم


Sub Globals

    Private Button1 As Button
End Sub

Sub Activity_Create(FirstTime As Boolean)

    Activity.LoadLayout("2")
    Dim Button1 As Button
    ' Define a BitmapDrawable for Enabled state
    Dim bdwEnabled As BitmapDrawable
    bdwEnabled.Initialize(LoadBitmap(File.DirAssets, "1.png"))
    ' Define a BitmapDrawable for Pressed state
    Dim bdwPressed As BitmapDrawable
    bdwPressed.Initialize(LoadBitmap(File.DirAssets, "2.png"))
    ' Define a StateListDrawable
    Dim stdBitmap As StateListDrawable
    stdBitmap.Initialize
    Dim states(2) As Int
    states(0) = stdBitmap.state_enabled
    states(1) = -stdBitmap.state_pressed
    stdBitmap.addState2(states, bdwEnabled)
    Dim states(1) As Int
    states(0) = stdBitmap.state_enabled
    stdBitmap.addState2(states, bdwPressed)
    ' Set stdBitmap to button btnBitmap
    Button1.Background = stdBitmap
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub


Sub Button1_Click
    
End Sub

-------------------------------------------------------------------------------------------------------------------

*** Service (starter) Create ***
** Service (starter) Start **
** Activity (main) Create, isFirst = true **
Error occurred on line: 49 (Main)
java.lang.RuntimeException: Object should first be initialized (Button).
    at anywheresoftware.b4a.AbsObjectWrapper.getObject(AbsObjectWrapper.java:50)
    at anywheresoftware.b4a.objects.ViewWrapper.setBackground(ViewWrapper.java:105)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at anywheresoftware.b4a.shell.Shell.runMethod(Shell.java:735)
    at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:357)
    at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:260)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:144)
    at b4a.example.main.afterFirstLayout(main.java:104)
    at b4a.example.main.access$000(main.java:17)
    at b4a.example.main$WaitForLayout.run(main.java:82)
    at android.os.Handler.handleCallback(Handler.java:733)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:136)
    at android.app.ActivityThread.main(ActivityThread.java:5019)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
    at dalvik.system.NativeStart.main(Native Method)
** Activity (main) Resume **

 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در در 1397/11/12, 11:41:41، hosein_h گفته است :

با عرض سلام ممنون که جواب دادین

ولی این من تست کردم نمیدونم اشکال از کجاست من یک باتن تو دیزاینر دارم واین جور طبق سورس شما قراردادم ارور داد ممنون میشم راهنماییم کنید اشکال از کجاست و این کد در کدام رویداد قرار بدم رویداد اکتیویتی یا باتن فکرکنم


Sub Globals

    Private Button1 As Button
End Sub

Sub Activity_Create(FirstTime As Boolean)

    Activity.LoadLayout("2")
    Dim Button1 As Button
    ' Define a BitmapDrawable for Enabled state
    Dim bdwEnabled As BitmapDrawable
    bdwEnabled.Initialize(LoadBitmap(File.DirAssets, "1.png"))
    ' Define a BitmapDrawable for Pressed state
    Dim bdwPressed As BitmapDrawable
    bdwPressed.Initialize(LoadBitmap(File.DirAssets, "2.png"))
    ' Define a StateListDrawable
    Dim stdBitmap As StateListDrawable
    stdBitmap.Initialize
    Dim states(2) As Int
    states(0) = stdBitmap.state_enabled
    states(1) = -stdBitmap.state_pressed
    stdBitmap.addState2(states, bdwEnabled)
    Dim states(1) As Int
    states(0) = stdBitmap.state_enabled
    stdBitmap.addState2(states, bdwPressed)
    ' Set stdBitmap to button btnBitmap
    Button1.Background = stdBitmap
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub


Sub Button1_Click
    
End Sub

-------------------------------------------------------------------------------------------------------------------

*** Service (starter) Create ***
** Service (starter) Start **
** Activity (main) Create, isFirst = true **
Error occurred on line: 49 (Main)
java.lang.RuntimeException: Object should first be initialized (Button).
    at anywheresoftware.b4a.AbsObjectWrapper.getObject(AbsObjectWrapper.java:50)
    at anywheresoftware.b4a.objects.ViewWrapper.setBackground(ViewWrapper.java:105)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at anywheresoftware.b4a.shell.Shell.runMethod(Shell.java:735)
    at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:357)
    at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:260)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:144)
    at b4a.example.main.afterFirstLayout(main.java:104)
    at b4a.example.main.access$000(main.java:17)
    at b4a.example.main$WaitForLayout.run(main.java:82)
    at android.os.Handler.handleCallback(Handler.java:733)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:136)
    at android.app.ActivityThread.main(ActivityThread.java:5019)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
    at dalvik.system.NativeStart.main(Native Method)
** Activity (main) Resume **

 

باعرض سلام کسی ازدوستان میتونه راهنمایی کنه؟

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 24 دقیقه قبل، hosein_h گفته است :

باعرض سلام کسی ازدوستان میتونه راهنمایی کنه؟

سلام بفرما اینجوری میتونی کاری ک میخوای رو انجام بدی

 


Sub Globals
	Dim b As Button
	Dim Checked,Unchecked As BitmapDrawable
	Dim sld As StateListDrawable
End Sub

Sub Activity_Create(FirstTime As Boolean)

b.Initialize("b")
Activity.AddView(b,0,0,50%x,50%x)
	Checked.Initialize (LoadBitmap(File.DirAssets, "Desert.jpg"))
	Unchecked.Initialize (LoadBitmap(File.DirAssets, "Hydrangeas.jpg"))
	
	sld.Initialize
	sld.AddState(sld.State_Pressed, Checked)
	sld.AddState(sld.State_Enabled, Unchecked)
	b.Background = sld

End Sub

کلا از StateListDrawable میتونی واسه ویوهای دو یا چند حالته استفاده کنی مثل Button, ToggleButton

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 1 ساعت قبل، m007moh گفته است :

سلام بفرما اینجوری میتونی کاری ک میخوای رو انجام بدی

 



Sub Globals
	Dim b As Button
	Dim Checked,Unchecked As BitmapDrawable
	Dim sld As StateListDrawable
End Sub

Sub Activity_Create(FirstTime As Boolean)

b.Initialize("b")
Activity.AddView(b,0,0,50%x,50%x)
	Checked.Initialize (LoadBitmap(File.DirAssets, "Desert.jpg"))
	Unchecked.Initialize (LoadBitmap(File.DirAssets, "Hydrangeas.jpg"))
	
	sld.Initialize
	sld.AddState(sld.State_Pressed, Checked)
	sld.AddState(sld.State_Enabled, Unchecked)
	b.Background = sld

End Sub

کلا از StateListDrawable میتونی واسه ویوهای دو یا چند حالته استفاده کنی مثل Button, ToggleButton 

سلام ممنون از راهنمایتون حل شد فقط یه سوال من باتنو اسکریپ دیزاینر مقدار دهی کردم یه سوال دیگه میتونم تو دیزاینرباتم اظافه کنم بعد عکس تو کدنویسی بدم ممنون از لطفتون

Activity.AddView(b,0,0,50%x,50%x)
btn_12.SetLeftAndRight(2%x,49%x)
btn_12.SetTopAndBottom(91%y,100%y)

 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 14 ساعت قبل، hosein_h گفته است :

سلام ممنون از راهنمایتون حل شد فقط یه سوال من باتنو اسکریپ دیزاینر مقدار دهی کردم یه سوال دیگه میتونم تو دیزاینرباتم اظافه کنم بعد عکس تو کدنویسی بدم ممنون از لطفتون


Activity.AddView(b,0,0,50%x,50%x)

btn_12.SetLeftAndRight(2%x,49%x)
btn_12.SetTopAndBottom(91%y,100%y)

 

 

آره میتونی مشکلی نداره من فقط واسه اینکه همچی کنار هم باشه اینجوری تعریف کردم

شما تودیزاین بساز و نشونش بده تو کد نویسی عکس بهش بده

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در در 1397/11/17, 10:18:57، m007moh گفته است :

 

آره میتونی مشکلی نداره من فقط واسه اینکه همچی کنار هم باشه اینجوری تعریف کردم

شما تودیزاین بساز و نشونش بده تو کد نویسی عکس بهش بده

ممنون از لطفت:give_rose:

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

مطالب شما نیاز است به تایید مدیران برسد

مهمان
شما به عنوان کاربر مهمان در حال حاضر دیدگاه ارسال می کنید. اگر دارای حساب کاربری در سایت هستید لطفا وارد حساب کاربری خود شوید.
پاسخ به این سوال ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از ۷۵ اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.