رفتن به مطلب
  • 0

استفاده از XML CheckBox در بیسیک


majid08

سوال

سلام و عرض ادب

من یک لای اوت xml دارم

توی بیسیک لود کردم توی پنل

ولی ساب CheckBox _CheckedChange(Checked As Boolean) کار نمیکنه

میدونم باید با جاوا حل شه ولی نمیدونم چطور یعنی کدش رو نمیدونم

دوستان و اساتید گرامی لطف کنید راهنمایی کنید

ممنونم

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

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

ارسال‌های توصیه شده

سلام

لایوت رو چطوری لود کردید؟ و لطفاً xml چک باکس رو قرار بدید اینجا که توی لایوت هست.

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

در 14 دقیقه قبل، پژمان نیکروان گفته است :

سلام

لایوت رو چطوری لود کردید؟ و لطفاً xml چک باکس رو قرار بدید اینجا که توی لایوت هست.

Dim newx As XmlLayoutBuilder
newx.LoadXmlLayout(Panel,"send_matn")

این هم xml چک باکس

 


   <CheckBox
       android:layout_width="150dp"
       android:layout_height="35dp"
       android:id="@+id/CheckBox"
       android:gravity="center"
       android:tag="CheckBox"
 />

 

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

ایدی رو تغییر بدید:

 android:id="@+id/checkbox1"

این کدهای جاوا رو ایجاد کنید:

#if java
import anywheresoftware.b4a.BA;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;

  public void setCheckChange(final BA ba){
	    	CheckBox ch=(CheckBox) findViewById(R.id.checkbox1);
	    	ch.setOnCheckedChangeListener(new OnCheckedChangeListener() {
				
				@Override
				public void onCheckedChanged(CompoundButton arg0, boolean cheacked) {
					ba.raiseEventFromUI(this, "ch_checkedchange",new Object[]{cheacked});
				}
			});
	    }
#End If

بعد از لود لایوت رویداد رو ایجاد کنید:

Dim r As Reflector
	Dim j As JavaObject
	j.InitializeContext
	j.RunMethod("setCheckChange",Array As Object(r.GetActivityBA))

 

بعد این رویداد رو ایجاد و ازش استفاده کنید:

Sub ch_CheckedChange(Checked As Boolean)
	
End Sub

 

تست نکردم. شاید یه اشکالاتی داشته باشه.

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

در 7 ساعت قبل، پژمان نیکروان گفته است :

ایدی رو تغییر بدید:


 android:id="@+id/checkbox1"

این کدهای جاوا رو ایجاد کنید:


#if java
import anywheresoftware.b4a.BA;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;

  public void setCheckChange(final BA ba){
	    	CheckBox ch=(CheckBox) findViewById(R.id.checkbox1);
	    	ch.setOnCheckedChangeListener(new OnCheckedChangeListener() {
				
				@Override
				public void onCheckedChanged(CompoundButton arg0, boolean cheacked) {
					ba.raiseEventFromUI(this, "ch_checkedchange",new Object[]{cheacked});
				}
			});
	    }
#End If

بعد از لود لایوت رویداد رو ایجاد کنید:


Dim r As Reflector
	Dim j As JavaObject
	j.InitializeContext
	j.RunMethod("setCheckChange",Array As Object(r.GetActivityBA))

 

بعد این رویداد رو ایجاد و ازش استفاده کنید:


Sub ch_CheckedChange(Checked As Boolean)
	
End Sub

 

تست نکردم. شاید یه اشکالاتی داشته باشه.

 

سلام

من این رو نوشتم

Dim r1 As Reflector
Dim j1 As JavaObject
j1.InitializeContext
j1.RunMethod("setCheckChange",Array As Object(r1.GetActivityBA))
	
از این خط خطا میگیره
    
j1.RunMethod("setCheckChange",Array As Object(r1.GetActivityBA))
             
 خطا
        
 java.lang.reflect.InvocationTargetException

 

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

در 10 ساعت قبل، majid08 گفته است :

از این خط خطا میگیره

یعنی وقتی اجرا کردید رو حالت دیباگ گذاشتید ازاین خط ایراد گرفت؟

اگه ممکنه فایل لایوت تون رو بذارید خودم تست کنم.

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

در در 1395/11/14, 16:31:58، پژمان نیکروان گفته است :

ایدی رو تغییر بدید:


 android:id="@+id/checkbox1"

این کدهای جاوا رو ایجاد کنید:


#if java
import anywheresoftware.b4a.BA;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;

  public void setCheckChange(final BA ba){
	    	CheckBox ch=(CheckBox) findViewById(R.id.checkbox1);
	    	ch.setOnCheckedChangeListener(new OnCheckedChangeListener() {
				
				@Override
				public void onCheckedChanged(CompoundButton arg0, boolean cheacked) {
					ba.raiseEventFromUI(this, "ch_checkedchange",new Object[]{cheacked});
				}
			});
	    }
#End If

بعد از لود لایوت رویداد رو ایجاد کنید:


Dim r As Reflector
	Dim j As JavaObject
	j.InitializeContext
	j.RunMethod("setCheckChange",Array As Object(r.GetActivityBA))

 

بعد این رویداد رو ایجاد و ازش استفاده کنید:


Sub ch_CheckedChange(Checked As Boolean)
	
End Sub

 

تست نکردم. شاید یه اشکالاتی داشته باشه.

 

سلام

من این رو نوشتم

Dim r1 As Reflector
Dim j1 As JavaObject
j1.InitializeContext
j1.RunMethod("setCheckChange",Array As Object(r1.GetActivityBA))
	
از این خط خطا میگیره
    
j1.RunMethod("setCheckChange",Array As Object(r1.GetActivityBA))
             
 خطا
        
 java.lang.RuntimeException: Method: setCheckChange not matched.

من نمیتونم دیباگ بگیرم

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

ممنونم

send_matn

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

در 14 ساعت قبل، majid08 گفته است :

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

سلام مجدد

تست کردم مشکی نبود و رویداد چک باکس کار کرد.

نمونه سورس

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

بایگانی شده

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

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...