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

AnswerCenter

مرکز پاسخگویی به سوالات برنامه نویسی

  • مرجع پاسخگویی
  • تولید آموزش
  • سفارش پروژه

درخواست سفارش پروژه

اطلاعیه

کاربر گرامی

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

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


بایگانی شده

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

  • 0
hosein_h

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

سوال

hosein_h    1

کاربر عادی

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

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

با تشکر

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


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

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

پست های پیشنهاد شده

محمدرضا شاهپیری    3,669

معاون انجمن

در 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

 

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


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

کاربر عادی

در 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 **

 

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


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

کاربر عادی

در در 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 **

 

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

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


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

کاربر رو به رشد

در 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

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


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

کاربر عادی

در 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)

 

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


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

کاربر رو به رشد

در 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)

 

 

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

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

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


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

کاربر عادی

در در 1397/11/17, 10:18:57، m007moh گفته است :

 

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

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

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

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
مهمان
این موضوع برای عدم ارسال قفل گردیده است.

×
×
  • جدید...